lkml.org 
[lkml]   [2008]   [Mar]   [12]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateWed, 12 Mar 2008 13:34:38 -0400
FromMark Lord <>
SubjectRe: [regression] pciehp hang on hp ia64 rx6600
Alex Chiang wrote:
> Hi Mark, Kristin,> > On my hp ia64 rx6600, 'modprobe pciehp' causes lockups and a
> system hang on 2.6.25-rc4. My system often hangs when only pciehp
> is loaded and my console is sitting idle, but I can accelerate
> the hang 100% of the time by immediately doing a 'modprobe
> acpiphp' right afterwards.
..

Does this patch fix things for you?

* * *

Invoke pciehp_enable_slot() at startup only when pciehp_force=1.
Some HP equipment apparently cannot cope with it otherwise.

This restores the (previously working) 2.6.24 behaviour here,
while allowing machines that need a kick to use pciehp_force=1.

Signed-off-by: Mark Lord <mlord@pobox.com>
---
--- linux-2.6.25-rc5-git2/drivers/pci/hotplug/pciehp_core.c	2008-03-12 13:21:46.000000000 -0400
+++ linux/drivers/pci/hotplug/pciehp_core.c	2008-03-12 13:23:54.000000000 -0400
@@ -467,7 +467,7 @@
 	t_slot = pciehp_find_slot(ctrl, ctrl->slot_device_offset);
 
 	t_slot->hpc_ops->get_adapter_status(t_slot, &value); /* Check if slot is occupied */
-	if (value) {
+	if (value && pciehp_force) {
 		rc = pciehp_enable_slot(t_slot);
 		if (rc)	/* -ENODEV: shouldn't happen, but deal with it */
 			value = 0;

\
 
 \ /
  Last update: 2008-03-12 18:41    [from the cache]
©2003-2008