Re: mtrr failure, 3.1-rc1

From: Suresh Siddha
Date: Thu Aug 25 2011 - 13:39:56 EST


On Thu, 2011-08-25 at 09:46 -0700, Tejun Heo wrote:
> Hello,
>
> On Thu, Aug 25, 2011 at 08:55:12AM -0700, Linus Torvalds wrote:
> > Hmm. Some of those commits are marked for stable too.
> >
> > I'm adding appropriate parties to the discussion (authors and
> > sign-offs from the five commits that that merge brings in), but it
> > would also be great if you could bisect exactly which commit broke for
> > you. You can make it quick by just doing
> >
> > git bisect start
> > git bisect bad dc43d9fa73d82083656fb9c02f4823bcdcfb9f91
> > git bisect good dc43d9fa73d82083656fb9c02f4823bcdcfb9f91^
> >
> > and it should take just a couple of tests. I *assume* it's the
> > stop_machine changes by Tejun &co, but who knows..
> >
> > Anders, is this a single-CPU system?
>
> Indeed, while removing custom rendezvous code and switching to
> stop_machine, commit 192d8857427d "x86, mtrr: use stop_machine APIs
> for doing MTRR rendezvous" completely dropped mtrr setting code on
> !CONFIG_SMP.

oops. My bad. Linus, Bad commit is not marked for stable.

I was able to reproduce the issue and tested the below patch. It looks
good.

Thanks.

Acked-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>

>
> Anders, if your kernel didn't have SMP turned on, can you please
> verify the following patch fixes the problem?
>
> Thanks.
>
> diff --git a/arch/x86/kernel/cpu/mtrr/main.c b/arch/x86/kernel/cpu/mtrr/main.c
> index 08119a3..6b96110 100644
> --- a/arch/x86/kernel/cpu/mtrr/main.c
> +++ b/arch/x86/kernel/cpu/mtrr/main.c
> @@ -149,7 +149,6 @@ struct set_mtrr_data {
> */
> static int mtrr_rendezvous_handler(void *info)
> {
> -#ifdef CONFIG_SMP
> struct set_mtrr_data *data = info;
>
> /*
> @@ -171,7 +170,6 @@ static int mtrr_rendezvous_handler(void *info)
> } else if (mtrr_aps_delayed_init || !cpu_online(smp_processor_id())) {
> mtrr_if->set_all();
> }
> -#endif
> return 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/