Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Dell Studio 1536 needs pci=nocrs to boot.

31 views
Skip to first unread message

Dave Jones

unread,
Dec 30, 2011, 2:37:37 PM12/30/11
to Linux Kernel, x...@kernel.org, jba...@virtuousgeek.org
Some machines don't boot unless passed pci=nocrs.
(See https://bugzilla.redhat.com/show_bug.cgi?id=770308 for details of
one report. Waiting on dmidecode output for others).

Currently there is a DMI whitelist, even though the default is on.

This patch extends that dmi list to add a blacklist to automatically
apply disable it when necessary.

Signed-off-by: Dave Jones <da...@redhat.com>

diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
index 404f21a..2704a9c 100644
--- a/arch/x86/pci/acpi.c
+++ b/arch/x86/pci/acpi.c
@@ -24,6 +24,12 @@ static int __init set_use_crs(const struct dmi_system_id *id)
return 0;
}

+static int __init set_nouse_crs(const struct dmi_system_id *id)
+{
+ pci_use_crs = false;
+ return 0;
+}
+
static const struct dmi_system_id pci_use_crs_table[] __initconst = {
/* http://bugzilla.kernel.org/show_bug.cgi?id=14183 */
{
@@ -54,6 +60,18 @@ static const struct dmi_system_id pci_use_crs_table[] __initconst = {
DMI_MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."),
},
},
+
+ /* Now for the blacklist.. */
+
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=770308 */
+ {
+ .callback = set_nouse_crs,
+ .ident = "Dell Studio 1536",
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "Dell Inc."),
+ DMI_MATCH(DMI_BOARD_NAME, "0M273C"),
+ },
+ },
{}
};

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Ingo Molnar

unread,
Jan 1, 2012, 9:56:28 AM1/1/12
to Dave Jones, Linux Kernel, x...@kernel.org, jba...@virtuousgeek.org

* Dave Jones <da...@redhat.com> wrote:

> Some machines don't boot unless passed pci=nocrs.
> (See https://bugzilla.redhat.com/show_bug.cgi?id=770308 for details of
> one report. Waiting on dmidecode output for others).
>
> Currently there is a DMI whitelist, even though the default is on.
>
> This patch extends that dmi list to add a blacklist to automatically
> apply disable it when necessary.
>
> Signed-off-by: Dave Jones <da...@redhat.com>

Acked-by: Ingo Molnar <mi...@elte.hu>

Jesse, will you take this one?

Thanks,

Ingo

Bjorn Helgaas

unread,
Jan 3, 2012, 12:55:32 PM1/3/12
to Jesse Barnes, Ingo Molnar, Dave Jones, Linux Kernel, x...@kernel.org
On Tue, Jan 3, 2012 at 10:30 AM, Jesse Barnes <jba...@virtuousgeek.org> wrote:
> On Sun, 1 Jan 2012 15:53:54 +0100
> Ingo Molnar <mi...@elte.hu> wrote:
>
>>
>> * Dave Jones <da...@redhat.com> wrote:
>>
>> > Some machines don't boot unless passed pci=nocrs.
>> > (See https://bugzilla.redhat.com/show_bug.cgi?id=770308 for details of
>> > � one report. Waiting on dmidecode output for others).
>> >
>> > Currently there is a DMI whitelist, even though the default is on.
>> >
>> > This patch extends that dmi list to add a blacklist to automatically
>> > apply disable it when necessary.
>> >
>> > Signed-off-by: Dave Jones <da...@redhat.com>
>>
>> Acked-by: Ingo Molnar <mi...@elte.hu>
>>
>> Jesse, will you take this one?
>
> Yeah, I can take it. �Bjorn, any comment (I'll bounce over the
> original)?

This is a band-aid, and we'll have to extend the blacklist for other
machines, but it's the best we have right now, so I think it's the
right thing to do.

It's probably the same as
https://bugzilla.kernel.org/show_bug.cgi?id=31602 (Dell 1546) and
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/647043

Bjorn

Dave Jones

unread,
Jan 3, 2012, 1:00:38 PM1/3/12
to Bjorn Helgaas, Jesse Barnes, Ingo Molnar, Linux Kernel, x...@kernel.org
On Tue, Jan 03, 2012 at 10:55:00AM -0700, Bjorn Helgaas wrote:
> On Tue, Jan 3, 2012 at 10:30 AM, Jesse Barnes <jba...@virtuousgeek.org> wrote:
> > On Sun, 1 Jan 2012 15:53:54 +0100
> > Ingo Molnar <mi...@elte.hu> wrote:
> >
> >>
> >> * Dave Jones <da...@redhat.com> wrote:
> >>
> >> > Some machines don't boot unless passed pci=nocrs.
> >> > (See https://bugzilla.redhat.com/show_bug.cgi?id=770308 for details of
> >> > � one report. Waiting on dmidecode output for others).
> >> >
> >> > Currently there is a DMI whitelist, even though the default is on.
> >> >
> >> > This patch extends that dmi list to add a blacklist to automatically
> >> > apply disable it when necessary.
> >> >
> >> > Signed-off-by: Dave Jones <da...@redhat.com>
> >>
> >> Acked-by: Ingo Molnar <mi...@elte.hu>
> >>
> >> Jesse, will you take this one?
> >
> > Yeah, I can take it. �Bjorn, any comment (I'll bounce over the
> > original)?
>
> This is a band-aid, and we'll have to extend the blacklist for other
> machines, but it's the best we have right now, so I think it's the
> right thing to do.
>
> It's probably the same as
> https://bugzilla.kernel.org/show_bug.cgi?id=31602 (Dell 1546) and
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/647043

There's at least one more dell (Seems that entire 'studio' product line
is affected) that I'm waiting on DMI data from.
Also a thinkpad that I have a patch pending for.

Dave

Dave Jones

unread,
Jan 4, 2012, 11:33:26 AM1/4/12
to Bjorn Helgaas, Jesse Barnes, Ingo Molnar, Linux Kernel, x...@kernel.org
The Dell Studio 1557 also doesn't suspend correctly when CRS is enabled.
Details at https://bugzilla.redhat.com/show_bug.cgi?id=769657

Reported-by: Gregory S. Hoerner <ghoe...@transcendingthought.com>
Signed-off-by: Dave Jones <da...@redhat.com>

--- linux-3.1.noarch/arch/x86/pci/acpi.c~ 2012-01-04 11:19:36.783664477 -0500
+++ linux-3.1.noarch/arch/x86/pci/acpi.c 2012-01-04 11:23:42.403666272 -0500
@@ -75,6 +75,16 @@ static const struct dmi_system_id pci_us
/* https://bugzilla.redhat.com/show_bug.cgi?id=769657 */
{
.callback = set_nouse_crs,
+ .ident = "Dell Studio 1557",
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "Dell Inc."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "Studio 1557");
+ DMI_MATCH(DMI_BIOS_VERSION, "A09"),
+ },
+ },
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=769657 */
+ {
+ .callback = set_nouse_crs,
.ident = "Thinkpad SL510",
.matches = {
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),

Ingo Molnar

unread,
Jan 4, 2012, 1:39:26 PM1/4/12
to Dave Jones, Bjorn Helgaas, Jesse Barnes, Linux Kernel, x...@kernel.org

* Dave Jones <da...@redhat.com> wrote:

> The Dell Studio 1557 also doesn't suspend correctly when CRS is enabled.
> Details at https://bugzilla.redhat.com/show_bug.cgi?id=769657
>
> Reported-by: Gregory S. Hoerner <ghoe...@transcendingthought.com>
> Signed-off-by: Dave Jones <da...@redhat.com>
>
> --- linux-3.1.noarch/arch/x86/pci/acpi.c~ 2012-01-04 11:19:36.783664477 -0500
> +++ linux-3.1.noarch/arch/x86/pci/acpi.c 2012-01-04 11:23:42.403666272 -0500
> @@ -75,6 +75,16 @@ static const struct dmi_system_id pci_us
> /* https://bugzilla.redhat.com/show_bug.cgi?id=769657 */
> {
> .callback = set_nouse_crs,
> + .ident = "Dell Studio 1557",
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "Dell Inc."),
> + DMI_MATCH(DMI_PRODUCT_NAME, "Studio 1557");
> + DMI_MATCH(DMI_BIOS_VERSION, "A09"),

Btw., should we perhaps match on all things 'Studio*'? For these
two systems i'm sure there's 20 other models we have not covered
yet ...

Thanks,

Ingo

Bjorn Helgaas

unread,
Jan 6, 2012, 12:32:41 PM1/6/12
to Dave Jones, Bjorn Helgaas, Jesse Barnes, Ingo Molnar, Linux Kernel, x...@kernel.org
I think we should drop the Dell 1536 blacklist entry from this patch
(adding set_nouse_crs() itself is fine and may be needed for other
machines).

The patches here: https://lkml.org/lkml/2012/1/5/402 should cover the
Dell 1536 issue as well as the Dell 1546 and any others with the same
BIOS defect.

Bjorn

Dave Jones

unread,
Jan 6, 2012, 2:13:49 PM1/6/12
to Bjorn Helgaas, Jesse Barnes, Ingo Molnar, Linux Kernel, x...@kernel.org
On Fri, Jan 06, 2012 at 10:32:14AM -0700, Bjorn Helgaas wrote:

> > There's at least one more dell (Seems that entire 'studio' product line
> > is affected) that I'm waiting on DMI data from.
> > Also a thinkpad that I have a patch pending for.
>
> I think we should drop the Dell 1536 blacklist entry from this patch
> (adding set_nouse_crs() itself is fine and may be needed for other
> machines).
>
> The patches here: https://lkml.org/lkml/2012/1/5/402 should cover the
> Dell 1536 issue as well as the Dell 1546 and any others with the same
> BIOS defect.

Sounds good to me.

Dave

Bjorn Helgaas

unread,
Jan 11, 2012, 11:08:25 AM1/11/12
to Ingo Molnar, Dave Jones, Jesse Barnes, Linux Kernel, x...@kernel.org, linu...@vger.kernel.org
On Wed, Jan 4, 2012 at 11:37 AM, Ingo Molnar <mi...@elte.hu> wrote:
>
> * Dave Jones <da...@redhat.com> wrote:
>
>> The Dell Studio 1557 also doesn't suspend correctly when CRS is enabled.
>> Details at https://bugzilla.redhat.com/show_bug.cgi?id=769657
>>
>> Reported-by: Gregory S. Hoerner <ghoe...@transcendingthought.com>
>> Signed-off-by: Dave Jones <da...@redhat.com>
>>
>> --- linux-3.1.noarch/arch/x86/pci/acpi.c~     2012-01-04 11:19:36.783664477 -0500
>> +++ linux-3.1.noarch/arch/x86/pci/acpi.c      2012-01-04 11:23:42.403666272 -0500
>> @@ -75,6 +75,16 @@ static const struct dmi_system_id pci_us
>>       /* https://bugzilla.redhat.com/show_bug.cgi?id=769657 */
>>       {
>>               .callback = set_nouse_crs,
>> +             .ident = "Dell Studio 1557",
>> +             .matches = {
>> +                     DMI_MATCH(DMI_BOARD_VENDOR, "Dell Inc."),
>> +                     DMI_MATCH(DMI_PRODUCT_NAME, "Studio 1557");
>> +                     DMI_MATCH(DMI_BIOS_VERSION, "A09"),
>
> Btw., should we perhaps match on all things 'Studio*'? For these
> two systems i'm sure there's 20 other models we have not covered
> yet ...

+linux-pci

I think we should hold off on merging this patch upstream. We don't
understand the root cause yet, and I haven't seen any evidence that
setting "pci=nocrs" actually makes a difference in PCI resource
allocation (https://bugzilla.redhat.com/show_bug.cgi?id=769657#c27)

Bjorn
0 new messages