mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] x86: mpparse: fix mp_bus_not_pci handling
@ 2011-09-25 21:29 Bjorn Helgaas
  2011-10-17 16:33 ` Bjorn Helgaas
  0 siblings, 1 reply; 6+ messages in thread
From: Bjorn Helgaas @ 2011-09-25 21:29 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: Dan McGrath, x86, linux-kernel, stable, Jonathan Nieder,
	Alexey Starikovskiy

Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
not the only non-PCI bus, so it's better to always set mp_bus_not_pci
and clear it only for PCI.

The workaround was to boot with "noapic".  Dan verified that with this
patch, his system boots without "noapic".

Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586494
Reported-and-tested-by: Dan McGrath <troubledaemon@gmail.com>
Cc: Alexey Starikovskiy <astarikovskiy@suse.de>
Cc: stable@kernel.org # 2.6.26+
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
---
 arch/x86/kernel/mpparse.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
index 9103b89..0741b062 100644
--- a/arch/x86/kernel/mpparse.c
+++ b/arch/x86/kernel/mpparse.c
@@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
 	}
 #endif
 
+	set_bit(m->busid, mp_bus_not_pci);
 	if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
-		set_bit(m->busid, mp_bus_not_pci);
 #if defined(CONFIG_EISA) || defined(CONFIG_MCA)
 		mp_bus_id_to_type[m->busid] = MP_BUS_ISA;
 #endif


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: mpparse: fix mp_bus_not_pci handling
  2011-09-25 21:29 [PATCH] x86: mpparse: fix mp_bus_not_pci handling Bjorn Helgaas
@ 2011-10-17 16:33 ` Bjorn Helgaas
  2011-10-17 22:14   ` Jonathan Nieder
  2011-10-18  6:35   ` Ingo Molnar
  0 siblings, 2 replies; 6+ messages in thread
From: Bjorn Helgaas @ 2011-10-17 16:33 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: Dan McGrath, x86, linux-kernel, Jonathan Nieder, Alexey Starikovskiy

On Sun, Sep 25, 2011 at 3:29 PM, Bjorn Helgaas <bhelgaas@google.com> wrote:
> Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
> Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
> except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
> not the only non-PCI bus, so it's better to always set mp_bus_not_pci
> and clear it only for PCI.
>
> The workaround was to boot with "noapic".  Dan verified that with this
> patch, his system boots without "noapic".
>
> Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586494
> Reported-and-tested-by: Dan McGrath <troubledaemon@gmail.com>
> Cc: Alexey Starikovskiy <astarikovskiy@suse.de>
> Cc: stable@kernel.org # 2.6.26+
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> ---
>  arch/x86/kernel/mpparse.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
> index 9103b89..0741b062 100644
> --- a/arch/x86/kernel/mpparse.c
> +++ b/arch/x86/kernel/mpparse.c
> @@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
>        }
>  #endif
>
> +       set_bit(m->busid, mp_bus_not_pci);
>        if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
> -               set_bit(m->busid, mp_bus_not_pci);
>  #if defined(CONFIG_EISA) || defined(CONFIG_MCA)
>                mp_bus_id_to_type[m->busid] = MP_BUS_ISA;
>  #endif
>
>

Ping?  I don't see this in linux-next, so I don't know if it got
dropped or if there's something wrong with it.

Bjorn

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: mpparse: fix mp_bus_not_pci handling
  2011-10-17 16:33 ` Bjorn Helgaas
@ 2011-10-17 22:14   ` Jonathan Nieder
  2011-10-18  6:35   ` Ingo Molnar
  1 sibling, 0 replies; 6+ messages in thread
From: Jonathan Nieder @ 2011-10-17 22:14 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Dan McGrath, x86,
	linux-kernel, Alexey Starikovsky

Bjorn Helgaas wrote:
> On Sun, Sep 25, 2011 at 3:29 PM, Bjorn Helgaas <bhelgaas@google.com> wrote:

>> Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
>> Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
>> except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
>> not the only non-PCI bus, so it's better to always set mp_bus_not_pci
>> and clear it only for PCI.
[...]
>> +++ b/arch/x86/kernel/mpparse.c
>> @@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
[...]
>> +       set_bit(m->busid, mp_bus_not_pci);
>>        if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
>> -               set_bit(m->busid, mp_bus_not_pci);
[...]
> Ping?  I don't see this in linux-next, so I don't know if it got
> dropped or if there's something wrong with it.

For what it's worth (not much, of course):

 Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: mpparse: fix mp_bus_not_pci handling
  2011-10-17 16:33 ` Bjorn Helgaas
  2011-10-17 22:14   ` Jonathan Nieder
@ 2011-10-18  6:35   ` Ingo Molnar
  1 sibling, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2011-10-18  6:35 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Dan McGrath, x86,
	linux-kernel, Jonathan Nieder, Alexey Starikovskiy


* Bjorn Helgaas <bhelgaas@google.com> wrote:

> On Sun, Sep 25, 2011 at 3:29 PM, Bjorn Helgaas <bhelgaas@google.com> wrote:
> > Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
> > Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
> > except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
> > not the only non-PCI bus, so it's better to always set mp_bus_not_pci
> > and clear it only for PCI.
> >
> > The workaround was to boot with "noapic".  Dan verified that with this
> > patch, his system boots without "noapic".
> >
> > Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586494
> > Reported-and-tested-by: Dan McGrath <troubledaemon@gmail.com>
> > Cc: Alexey Starikovskiy <astarikovskiy@suse.de>
> > Cc: stable@kernel.org # 2.6.26+
> > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> > ---
> >  arch/x86/kernel/mpparse.c |    2 +-
> >  1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
> > index 9103b89..0741b062 100644
> > --- a/arch/x86/kernel/mpparse.c
> > +++ b/arch/x86/kernel/mpparse.c
> > @@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
> >        }
> >  #endif
> >
> > +       set_bit(m->busid, mp_bus_not_pci);
> >        if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
> > -               set_bit(m->busid, mp_bus_not_pci);
> >  #if defined(CONFIG_EISA) || defined(CONFIG_MCA)
> >                mp_bus_id_to_type[m->busid] = MP_BUS_ISA;
> >  #endif
> >
> >
> 
> Ping?  I don't see this in linux-next, so I don't know if it got
> dropped or if there's something wrong with it.

Please resend - this is one of the mails that got lost in my korg 
email disconnect.

Patch looks good at first sight.

Thanks,

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: mpparse: fix mp_bus_not_pci handling
  2011-10-18 14:47 Bjorn Helgaas
@ 2011-10-31 17:04 ` Bjorn Helgaas
  0 siblings, 0 replies; 6+ messages in thread
From: Bjorn Helgaas @ 2011-10-31 17:04 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: Dan McGrath, x86, linux-kernel, Jonathan Nieder, Alexey Starikovskiy

On Tue, Oct 18, 2011 at 8:47 AM, Bjorn Helgaas <bhelgaas@google.com> wrote:
> Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
> Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
> except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
> not the only non-PCI bus, so it's better to always set mp_bus_not_pci
> and clear it only for PCI.
>
> The workaround was to boot with "noapic".  Dan verified that with this
> patch, his system boots without "noapic".
>
> Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586494
> Reported-and-tested-by: Dan McGrath <troubledaemon@gmail.com>
> Cc: Alexey Starikovskiy <astarikovskiy@suse.de>
> Cc: stable@kernel.org # 2.6.26+
> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> ---
>  arch/x86/kernel/mpparse.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
> index 9103b89..0741b062 100644
> --- a/arch/x86/kernel/mpparse.c
> +++ b/arch/x86/kernel/mpparse.c
> @@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
>        }
>  #endif
>
> +       set_bit(m->busid, mp_bus_not_pci);
>        if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
> -               set_bit(m->busid, mp_bus_not_pci);
>  #if defined(CONFIG_EISA) || defined(CONFIG_MCA)
>                mp_bus_id_to_type[m->busid] = MP_BUS_ISA;
>  #endif

Ping?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] x86: mpparse: fix mp_bus_not_pci handling
@ 2011-10-18 14:47 Bjorn Helgaas
  2011-10-31 17:04 ` Bjorn Helgaas
  0 siblings, 1 reply; 6+ messages in thread
From: Bjorn Helgaas @ 2011-10-18 14:47 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: Dan McGrath, x86, linux-kernel, stable, Jonathan Nieder,
	Alexey Starikovskiy

Dan bisected a Dell PowerEdge 4200 boot regression to commit f8924e770.
Prior to that commit, 32-bit kernels set mp_bus_not_pci for all buses
except PCI.  Afterwards, we set mp_bus_not_pci only for ISA.  But ISA is
not the only non-PCI bus, so it's better to always set mp_bus_not_pci
and clear it only for PCI.

The workaround was to boot with "noapic".  Dan verified that with this
patch, his system boots without "noapic".

Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586494
Reported-and-tested-by: Dan McGrath <troubledaemon@gmail.com>
Cc: Alexey Starikovskiy <astarikovskiy@suse.de>
Cc: stable@kernel.org # 2.6.26+
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
---
 arch/x86/kernel/mpparse.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c
index 9103b89..0741b062 100644
--- a/arch/x86/kernel/mpparse.c
+++ b/arch/x86/kernel/mpparse.c
@@ -95,8 +95,8 @@ static void __init MP_bus_info(struct mpc_bus *m)
 	}
 #endif
 
+	set_bit(m->busid, mp_bus_not_pci);
 	if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA) - 1) == 0) {
-		set_bit(m->busid, mp_bus_not_pci);
 #if defined(CONFIG_EISA) || defined(CONFIG_MCA)
 		mp_bus_id_to_type[m->busid] = MP_BUS_ISA;
 #endif


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-10-31 17:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-25 21:29 [PATCH] x86: mpparse: fix mp_bus_not_pci handling Bjorn Helgaas
2011-10-17 16:33 ` Bjorn Helgaas
2011-10-17 22:14   ` Jonathan Nieder
2011-10-18  6:35   ` Ingo Molnar
2011-10-18 14:47 Bjorn Helgaas
2011-10-31 17:04 ` Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®