[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160206220437.GA4435@pd.tnic>
Date: Sat, 6 Feb 2016 23:04:37 +0100
From: Borislav Petkov <bp@...en8.de>
To: Andy Lutomirski <luto@...capital.net>
Cc: "Luis R. Rodriguez" <mcgrof@...e.com>,
"Luis R. Rodriguez" <mcgrof@...nel.org>, cocci@...teme.lip6.fr,
Boris Ostrovsky <boris.ostrovsky@...cle.com>,
Juergen Gross <jgross@...e.com>, mcb30@...e.org,
Thomas Gleixner <tglx@...utronix.de>,
Andrey Ryabinin <aryabinin@...tuozzo.com>,
Joerg Roedel <joro@...tes.org>,
Robert Moore <robert.moore@...el.com>,
Mauro Carvalho Chehab <mchehab@....samsung.com>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
Xen Devel <xen-devel@...ts.xensource.com>,
"H. Peter Anvin" <hpa@...or.com>,
Rusty Russell <rusty@...tcorp.com.au>,
Jan Beulich <JBeulich@...e.com>, Lv Zheng <lv.zheng@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
long.wanglong@...wei.com, Fengguang Wu <fengguang.wu@...el.com>,
qiuxishi@...wei.com, Andrey Ryabinin <ryabinin.a.a@...il.com>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
david.e.box@...el.com, X86 ML <x86@...nel.org>,
Ingo Molnar <mingo@...hat.com>
Subject: Re: [PATCH v2 3/3] paravirt: rename paravirt_enabled to
paravirt_legacy
On Sat, Feb 06, 2016 at 12:05:32PM -0800, Andy Lutomirski wrote:
> int __init microcode_init(void)
> {
> [...]
> if (paravirt_enabled() || dis_ucode_ldr)
> return -EINVAL;
>
> This is also asking "are we the natively booted kernel?" This is
> plausibly useful for real. (Borislav, is this actually necessary?)
There was some breakage on 32-bit pvops with that.
> Seems to me there should be a function is_native_root_kernel() or
> similar. Obviously it could have false positives and code will have
> to deal with that. (This also could be entirely wrong. What code is
> responsible for CPU microcode updates on Xen? For all I know, dom0 is
> *supposed* to apply microcode updates, in which case that check really
> should be deleted.
So there are two aspects:
- the guest loading the microcode driver. Xen should behave like
qemu+kvm does: emulate the MSR accesses the microcode loader does.
- microcode application on Xen: we've had this before. The hypervisor
should do that (if it doesn't do so already).
So yes, that paravirt_enabled() thing should go away. Even more so if we
have CPUID leaf 0x4... reserved for hypervisors.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
Powered by blists - more mailing lists