Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1332143 > unrolled thread
| Started by | Boris Ostrovsky <boris.ostrovsky@oracle.com> |
|---|---|
| First post | 2016-02-11 16:20 +0100 |
| Last post | 2016-02-19 12:40 +0100 |
| Articles | 11 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-02-11 16:20 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Borislav Petkov <bp@alien8.de> - 2016-02-11 19:20 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-02-19 11:10 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Borislav Petkov <bp@alien8.de> - 2016-02-19 11:20 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-02-19 11:40 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Borislav Petkov <bp@alien8.de> - 2016-02-19 11:50 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-02-19 12:00 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-02-19 12:10 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Borislav Petkov <bp@alien8.de> - 2016-02-19 12:20 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-02-19 12:30 +0100
Re: [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check Borislav Petkov <bp@alien8.de> - 2016-02-19 12:40 +0100
| From | Boris Ostrovsky <boris.ostrovsky@oracle.com> |
|---|---|
| Date | 2016-02-11 16:20 +0100 |
| Subject | [PATCH] x86, microcode: Remove unnecessary paravirt_enabled check |
| Message-ID | <r11cf-26P-29@gated-at.bofh.it> |
Commit a18a0f6850d4 ("x86, microcode: Don't initialize microcode code on
paravirt") added a paravirt test in microcode_init(), primarily to avoid
making mc_bp_resume()->load_ucode_ap()->check_loader_disabled_ap() calls
On 32-bit kernels this callchain ends up using __pa_nodebug() macro
which is invalid for Xen PV guests.
A subsequent commit, fbae4ba8c4a3 ("x86, microcode: Reload microcode on
resume"), eliminated this callchain thus making a18a0f6850d4
unnecessary.
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
---
arch/x86/kernel/cpu/microcode/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kernel/cpu/microcode/core.c b/arch/x86/kernel/cpu/microcode/core.c
index cea8552..ac360bf 100644
--- a/arch/x86/kernel/cpu/microcode/core.c
+++ b/arch/x86/kernel/cpu/microcode/core.c
@@ -623,7 +623,7 @@ int __init microcode_init(void)
struct cpuinfo_x86 *c = &boot_cpu_data;
int error;
- if (paravirt_enabled() || dis_ucode_ldr)
+ if (dis_ucode_ldr)
return -EINVAL;
if (c->x86_vendor == X86_VENDOR_INTEL)
--
2.1.0
[toc] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2016-02-11 19:20 +0100 |
| Message-ID | <r140q-40Y-15@gated-at.bofh.it> |
| In reply to | #1332143 |
On Thu, Feb 11, 2016 at 10:13:18AM -0500, Boris Ostrovsky wrote:
> Commit a18a0f6850d4 ("x86, microcode: Don't initialize microcode code on
> paravirt") added a paravirt test in microcode_init(), primarily to avoid
> making mc_bp_resume()->load_ucode_ap()->check_loader_disabled_ap() calls
> On 32-bit kernels this callchain ends up using __pa_nodebug() macro
> which is invalid for Xen PV guests.
>
> A subsequent commit, fbae4ba8c4a3 ("x86, microcode: Reload microcode on
> resume"), eliminated this callchain thus making a18a0f6850d4
> unnecessary.
>
> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> ---
> arch/x86/kernel/cpu/microcode/core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Applied, thanks.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
[toc] | [prev] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2016-02-19 11:10 +0100 |
| Message-ID | <r3QaC-3rb-5@gated-at.bofh.it> |
| In reply to | #1332143 |
On Thu, Feb 11, 2016 at 5:13 PM, Boris Ostrovsky
<boris.ostrovsky@oracle.com> wrote:
> Commit a18a0f6850d4 ("x86, microcode: Don't initialize microcode code on
> paravirt") added a paravirt test in microcode_init(), primarily to avoid
> making mc_bp_resume()->load_ucode_ap()->check_loader_disabled_ap() calls
> On 32-bit kernels this callchain ends up using __pa_nodebug() macro
> which is invalid for Xen PV guests.
>
> A subsequent commit, fbae4ba8c4a3 ("x86, microcode: Reload microcode on
> resume"), eliminated this callchain thus making a18a0f6850d4
> unnecessary.
Sorry for being too late, but this commit breaks 32-bit kernel on
Intel Medfield.
Reverting the only commit from today's linux-next helps.
Put me in Cc list to pursue testing whatever you come with.
> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> ---
> arch/x86/kernel/cpu/microcode/core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/kernel/cpu/microcode/core.c b/arch/x86/kernel/cpu/microcode/core.c
> index cea8552..ac360bf 100644
> --- a/arch/x86/kernel/cpu/microcode/core.c
> +++ b/arch/x86/kernel/cpu/microcode/core.c
> @@ -623,7 +623,7 @@ int __init microcode_init(void)
> struct cpuinfo_x86 *c = &boot_cpu_data;
> int error;
>
> - if (paravirt_enabled() || dis_ucode_ldr)
> + if (dis_ucode_ldr)
> return -EINVAL;
>
> if (c->x86_vendor == X86_VENDOR_INTEL)
> --
> 2.1.0
>
--
With Best Regards,
Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2016-02-19 11:20 +0100 |
| Message-ID | <r3Qki-3vx-7@gated-at.bofh.it> |
| In reply to | #1338024 |
On Fri, Feb 19, 2016 at 12:06:33PM +0200, Andy Shevchenko wrote:
> Sorry for being too late, but this commit breaks 32-bit kernel on
> Intel Medfield. Reverting the only commit from today's linux-next
> helps.
You mean this commit?!
fbae4ba8c4a3 ("x86, microcode: Reload microcode on resume")
This has been in since 3.19.
Please explain.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
[toc] | [prev] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2016-02-19 11:40 +0100 |
| Message-ID | <r3QDE-3H6-11@gated-at.bofh.it> |
| In reply to | #1338031 |
On Fri, Feb 19, 2016 at 12:18 PM, Borislav Petkov <bp@alien8.de> wrote:
> On Fri, Feb 19, 2016 at 12:06:33PM +0200, Andy Shevchenko wrote:
>> Sorry for being too late, but this commit breaks 32-bit kernel on
>> Intel Medfield. Reverting the only commit from today's linux-next
>> helps.
>
> You mean this commit?!
>
> fbae4ba8c4a3 ("x86, microcode: Reload microcode on resume")
>
> This has been in since 3.19.
>
> Please explain.
No, the commit 84aba677f009 as of today's linux-next on which I commented.
commit 84aba677f009e20185aea322563389ad56e0ef7e
Author: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Date: Tue Feb 16 09:43:19 2016 +0100
x86/microcode: Remove unnecessary paravirt_enabled check
One more thing: I run this kernel as a second from kexec. It might be
related as well. For now I have no possibility to run it as a first
kernel.
--
With Best Regards,
Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2016-02-19 11:50 +0100 |
| Message-ID | <r3QNk-3My-15@gated-at.bofh.it> |
| In reply to | #1338041 |
On Fri, Feb 19, 2016 at 12:33:46PM +0200, Andy Shevchenko wrote:
> No, the commit 84aba677f009 as of today's linux-next on which I commented.
You commented under the "> A subsequent commit, fbae4ba8c4a3" which confused me
as to which commit is the culprit.
> commit 84aba677f009e20185aea322563389ad56e0ef7e
> Author: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Date: Tue Feb 16 09:43:19 2016 +0100
>
> x86/microcode: Remove unnecessary paravirt_enabled check
>
> One more thing: I run this kernel as a second from kexec. It might be
> related as well. For now I have no possibility to run it as a first
> kernel.
Well, how exactly are you triggering this? Do you have a splat or some
other register dump so that I can try to pinpoint this. I'll need more
info so that I can reproduce it here and debug it.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
[toc] | [prev] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2016-02-19 12:00 +0100 |
| Message-ID | <r3QX2-3RC-47@gated-at.bofh.it> |
| In reply to | #1338047 |
On Fri, Feb 19, 2016 at 12:46 PM, Borislav Petkov <bp@alien8.de> wrote: > On Fri, Feb 19, 2016 at 12:33:46PM +0200, Andy Shevchenko wrote: >> No, the commit 84aba677f009 as of today's linux-next on which I commented. > > You commented under the "> A subsequent commit, fbae4ba8c4a3" which confused me > as to which commit is the culprit. Yeah, at least now it's clear I suppose. >> commit 84aba677f009e20185aea322563389ad56e0ef7e >> Author: Boris Ostrovsky <boris.ostrovsky@oracle.com> >> Date: Tue Feb 16 09:43:19 2016 +0100 >> >> x86/microcode: Remove unnecessary paravirt_enabled check >> >> One more thing: I run this kernel as a second from kexec. It might be >> related as well. For now I have no possibility to run it as a first >> kernel. > > Well, how exactly are you triggering this? Do you have a splat or some > other register dump so that I can try to pinpoint this. I'll need more > info so that I can reproduce it here and debug it. It stuck at some point during boot. I'm trying to get earlycon or earlyprintk to show me something... -- With Best Regards, Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2016-02-19 12:10 +0100 |
| Message-ID | <r3R6G-4cA-7@gated-at.bofh.it> |
| In reply to | #1338050 |
On Fri, Feb 19, 2016 at 12:50 PM, Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > On Fri, Feb 19, 2016 at 12:46 PM, Borislav Petkov <bp@alien8.de> wrote: >> On Fri, Feb 19, 2016 at 12:33:46PM +0200, Andy Shevchenko wrote: >>> commit 84aba677f009e20185aea322563389ad56e0ef7e >>> Author: Boris Ostrovsky <boris.ostrovsky@oracle.com> >>> Date: Tue Feb 16 09:43:19 2016 +0100 >>> >>> x86/microcode: Remove unnecessary paravirt_enabled check >>> >>> One more thing: I run this kernel as a second from kexec. It might be >>> related as well. For now I have no possibility to run it as a first >>> kernel. >> >> Well, how exactly are you triggering this? Do you have a splat or some >> other register dump so that I can try to pinpoint this. I'll need more >> info so that I can reproduce it here and debug it. > > It stuck at some point during boot. I'm trying to get earlycon or > earlyprintk to show me something... That what I see last with earlycon enabled + `debug` in cmdline: … [ 0.000000] Console: colour VGA+ 80x25 [ 0.000000] console [tty1] enabled [ 0.000000] console [ttyS1] enabled [ 0.000000] bootconsole [uart8250] disabled Without it I see nothing at all. -- With Best Regards, Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2016-02-19 12:20 +0100 |
| Message-ID | <r3Rgm-4hQ-9@gated-at.bofh.it> |
| In reply to | #1338056 |
On Fri, Feb 19, 2016 at 01:00:35PM +0200, Andy Shevchenko wrote:
> That what I see last with earlycon enabled + `debug` in cmdline:
That doesn't help. Can you dump RIP, etc registers as to where the
machine freezes?
Let me confirm this: booting with "dis_ucode_ldr" works?
Also, please send .config and detailed steps how to reproduce.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
[toc] | [prev] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2016-02-19 12:30 +0100 |
| Message-ID | <r3Rq1-4mn-7@gated-at.bofh.it> |
| In reply to | #1338058 |
On Fri, Feb 19, 2016 at 1:10 PM, Borislav Petkov <bp@alien8.de> wrote: > On Fri, Feb 19, 2016 at 01:00:35PM +0200, Andy Shevchenko wrote: >> That what I see last with earlycon enabled + `debug` in cmdline: > > That doesn't help. Heh, rebuilt on clean repository -> everything works. Looks like false alarm and practical proof to do clean build first. -- With Best Regards, Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2016-02-19 12:40 +0100 |
| Message-ID | <r3RzI-4rt-23@gated-at.bofh.it> |
| In reply to | #1338059 |
On Fri, Feb 19, 2016 at 01:21:10PM +0200, Andy Shevchenko wrote:
> Heh, rebuilt on clean repository -> everything works. Looks like false
> alarm and practical proof to do clean build first.
Always, like *really* *always*, do
$ make mrproper
or even
$ git clean -dqfx
before testing kernels. I've learned that the hard way and it seems
you just did too.
:)
Btw, be careful with that git clean command - it kills *everything*. I
do "git clean -dnx" just in case before doing the "-f" thing.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web