Re: [regression] pciehp hang on hp ia64 rx6600

From: Alex Chiang
Date: Mon Mar 17 2008 - 15:53:30 EST


Hi Mark,

* Mark Lord <mlord@xxxxxxxxx>:
> 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?

Yes, this patch does revert back to previously working 2.6.24
behavior and fixes the problem for me.

Thanks.

> * * *
>
> 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.
>

Acked-by: Alex Chiang <achiang@xxxxxx>

> Signed-off-by: Mark Lord <mlord@xxxxxxxxx>
> ---
>
> --- 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;
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/