Re: [PATCH] ASPM: Fix pcie devices with non-pcie children

From: Jonathan Nieder
Date: Wed Mar 28 2012 - 17:16:08 EST


Hi Matthew,

Matthew Garrett wrote:

> Commit 4949be16822e92a18ea0cc1616319926628092ee changed the behaviour of
> pcie_aspm_sanity_check() to always return 0 if aspm is disabled, in order
> to avoid cases where we changed ASPM state on pre-PCIe 1.1 devices. This
> skipped the secondary function of pcie_aspm_sanity_check which was to avoid
> us enabling ASPM on devices that had non-PCIe children, causing us to hit
> a BUG_ON later on. Move the aspm_disabled check so we continue to honour
> that scenario.

janek (cc-ed) never experienced the BUG_ON. Instead, starting with
v3.3 and v3.2.12 his hard disk using the pata_jmicron driver was not
detected during boot-up, resulting in the message "gave up waiting for
root device" and a failed boot.

Found in

Debian kernel 3.2.12-1
Debian kernel 3.3-1~experimental.1
Upstream 3.3
Linus's "master" as of 2012-03-28

Based on the thread [1] we blamed 4949be16822. janek tried the patch
above on top of linus's "master". The result:

> Thanks. This patch fixes the problem.

In other words, this gets the pata_jmicron driver to enumerate its
drives again, a positive effect that wasn't even advertised in the
commit message. ;-) Thanks for writing it.

Sincerely,
Jonathan

[1] http://thread.gmane.org/gmane.linux.kernel/1271264/focus=1271785
--
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/