lkml.org 
[lkml]   [2016]   [Apr]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 01/11] x86/boot: enumerate documentation for the x86 hardware_subarch
David, please note below the highlighted code.

On Wed, Feb 24, 2016 at 09:32:59AM +0100, Ingo Molnar wrote:
>
> * Luis R. Rodriguez <mcgrof@kernel.org> wrote:
> For hard coded platform quirks I'd suggest we add x86_platform.quirks flags. For
> example the F00F hack for Xen could be done via:
>
> x86_platform.quirks.idt_remap = 0;
>
> and would be set like this during early init:
>
> void early_init_platform_quirks(void)
> {
> x86_platform.legacy.ebda_search = 0;
> x86_platform.quirks.idt_remap = 1;
>
> switch (boot_params.hdr.hardware_subarch) {
> case X86_SUBARCH_PC:
> x86_platform.legacy.ebda_search = 1;
> break;
> case X86_SUBARCH_XEN:
> x86_platform.quirks.idt_remap = 0;
> break;
> case X86_SUBARCH_LGUEST:
> x86_platform.quirks.idt_remap = 0;
> break;
> }
> }
>
> And if also add the legacy RTC flag, it becomes:
>
> void early_init_hardcoded_platform_quirks(void)
> {
> x86_platform.legacy.ebda_search = 0;
> x86_platform.quirks.idt_remap = 1;
> x86_platform.legacy.rtc = 1;
>
> switch (boot_params.hdr.hardware_subarch) {
> case X86_SUBARCH_PC:
> x86_platform.legacy.ebda_search = 1;
> break;
> case X86_SUBARCH_XEN:
> x86_platform.quirks.idt_remap = 0;
> x86_platform.legacy.rtc = 0;
> break;
> case X86_SUBARCH_LGUEST:
> x86_platform.quirks.idt_remap = 0;
> x86_platform.legacy.rtc = 0;
> break;
> }
> }
>
> Note that both opt-in and opt-out quirks/legacies are possible this way, and note
> how cleanly and consistently it's all organized: setup of all hard coded
> legacies/quirks is concentrated in a single function, and the actual usage sites
> don't know anything about subarchitectures.

<-- snip -- >

So.. I went with Ingo's template.

> Furthermore we should probably move a few other existing legacies to this flag
> space as well, to make all this more consistent.

And this suggestion should explain a bit of the effort I put into making
room for other legacy things, which I'll elaborate in the other thread.

Luis

\
 
 \ /
  Last update: 2016-04-07 23:41    [W:0.110 / U:0.248 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site