Re: MCE, AMD: Hide smp-only code around CONFIG_SMP

From: Kevin Winchester
Date: Tue Feb 07 2012 - 19:41:39 EST


On 7 February 2012 05:57, Ingo Molnar <mingo@xxxxxxx> wrote:
>
> * Borislav Petkov <bp@xxxxxxxxx> wrote:
>
>> On Thu, Feb 02, 2012 at 09:24:28PM +0100, Borislav Petkov wrote:
>> > > Is this feature truly irrelevant on UP systems?  I ask because I've
>> > > always enabled this option on my UP AMD systems in the past...
>> >
>> > No, you're right. Thanks for the suggestion. Scratch that version, I'll
>> > think of a better fix.
>>
>> Ok, I think I got it, pls take a look and scream if something's amiss.
>>
>> @Randy: it builds fine with your randconfig and with mine default one;
>> I'd appreciate if you could run it too, just in case.
>>
>> Thanks.
>>
>> --
>> From: Borislav Petkov <bp@xxxxxxxxx>
>> Date: Fri, 3 Feb 2012 18:07:54 +0100
>> Subject: [PATCH] MCE, AMD: Hide smp-only code around CONFIG_SMP
>>
>> 141168c36cde ("x86: Simplify code by removing a !SMP #ifdefs from
>> 'struct cpuinfo_x86'") removed a bunch of CONFIG_SMP ifdefs around code
>> touching struct cpuinfo_x86 members but also caused the following build
>> error with Randy's randconfigs:
>>
>> mce_amd.c:(.cpuinit.text+0x4723): undefined reference to `cpu_llc_shared_map'
>>
>> Restore the #ifdef in threshold_create_bank() which creates symlinks on
>> the non-BSP CPUs.
>>
>
> Could we please just define an obvious cpu_llc_shared_mask on UP
> (one bit long and set to 1) and not reintroduce the ugly
> #ifdef CONFIG_SMP?
>

I ran into this when I was working on the original patch, and I
thought I had solved all of the issues like this. Unfortunately not.

The problem is that there doesn't seem to be a great place to define
this (along with a few other functions like this) on UP. We have
<linux/smp.h> including <asm/smp.h> in the CONFIG_SMP case, but no
arch-specific defs for UP. Would it be crazy to have <linux/smp.h>
include a new <asm/up.h> for !CONFIG_SMP?

I am willing to prepare the patch, if someone can tell me where to
define cpu_llc_shared_mask for UP?

Thanks,

--
Kevin Winchester
--
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/