Re: [PATCH 2/9] x86, RAS: Start reorganizing RAS features support

From: Mauro Carvalho Chehab
Date: Wed Oct 19 2011 - 15:14:41 EST


Em 19-10-2011 16:11, Borislav Petkov escreveu:
> On Wed, Oct 19, 2011 at 01:22:27PM -0400, Mauro Carvalho Chehab wrote:
>> Em 19-10-2011 15:13, Luck, Tony escreveu:
>>>> Start relocating RAS features into a centralized location under
>>>> arch/x86/kernel/cpu/ras/. Readjust Kconfig items and makefiles
>>>> accordingly.
>>>
>>> Not all ras features are "cpu" orientated ... should we really be
>>> moving to "arch/x86/kernel/ras"?
>>
>> I think that it makes sense to move MCA bits into arch/x86, but I agree
>> with Tony: generally speaking, RAS is not even x86 specific.
>
> But we are :-)
>
>> It seems to make more sense to rename drivers/edac to drivers/ras and put
>> the RAS menu there, even if the actual support for the AMD and Intel MCA
>> RAS stuff is kept inside arch/x86/...
>
> drivers/edac/ contains other architectures too, patches for which we
> cannot (and probably don't want to) test so the whole deal has to be
> x86-centric.

Most drivers there are for memory controller chipsets, so, even the x86 specific
drivers there won't fit well inside arch/. It might even be possible to have a
MC driver used on more than one architecture (it just doesn't occur, in practice,
because the MC is generally inside a north bridge chip that is sold to match some
features found on some CPU family).

> I don't consider MCE decoding and injection drivers but rather MCA
> functionality extensions or something, so those should go to arch/x86/
> IMHO.

Agreed. MCE decoders and MCE error injection fit better together with
MCA bits. I think they could just be moved to be into the same directory where
the MCE driver is located.

> And the DRAM error decoding things, aka EDAC, should stay where they
> are, although I cannot call them real drivers, either. We can't move
> them yet anyway because they use the whole EDAC infrastructure.

True.

>From someone that wants to select the RAS features however, it makes sense
to put everything together at the same menu when selecting the RAS options.

There are some tricks that could be used, like, for example, having something
like:

menuconfig RAS_FEATURES
bool "Enable RAS features"

if RAS_REATURES

config RAS_MCE
bool "turn on Memory Channel Architecture Error logic for AMD CPU's"
depends on X86
select X86_MCE_AMD

config RAS_MCE
bool "turn on Memory Channel Architecture Error logic for Intel CPU's"
depends on X86
select X86_MCE_INTEL

source "drivers/edac"

endif

at a /drivers/ras Kconfig (or at /ras)

This would allow putting everything together at the same Kconfig menu.

Regards,
Mauro


>
> Hmm...
>

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