Messages in this thread Patch in this message |  | | | Date | Wed, 12 Mar 2008 13:34:38 -0400 | | From | Mark Lord <> | | Subject | Re: [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;
|  |