Re: [3.9-rc1] Bug in bootup code or debug code?

From: Tetsuo Handa
Date: Wed Mar 13 2013 - 09:24:51 EST


Tetsuo Handa wrote:
> Tetsuo Handa wrote:
> > Hello.
> >
> > I can boot linux-next-20130205 using kernel config at
> > http://I-love.SAKURA.ne.jp/tmp/config-3.8-rc6-next-20130205 .
> > But I get VMware's virtual machine kernel stack fault (hardware reset) as soon
> > as kernel is loaded if CONFIG_DEBUG_VIRTUAL=y is added to the config above.
> >
> > Since I don't get kernel stack fault if CONFIG_DEBUG_VIRTUAL=y is added to
> > kernel config generated by "make allnoconfig", I guess something is wrong with
> > code which is executed at very early stage of bootup.
> >
> > Any clue?
> >
> > Regards.
> >
>
> This bug is not yet fixed as of 3.9-rc1.
> Should I run git bisect?
>
> Regards.
>

I found the location of "hardware reset" trigger.

It is __pa_symbol(&boot_params) call, for I don't encounter "hardware reset" if
I remove the "//" from below debug patch.

This bug is not yet fixed as of 3.9.0-rc2-00188-g6c23cbb .

--- a/arch/x86/kernel/microcode_intel_early.c
+++ b/arch/x86/kernel/microcode_intel_early.c
@@ -741,7 +741,9 @@ load_ucode_intel_bsp(void)
#ifdef CONFIG_X86_32
struct boot_params *boot_params_p;

+ //while (1);
boot_params_p = (struct boot_params *)__pa_symbol(&boot_params);
+ while (1);
ramdisk_image = boot_params_p->hdr.ramdisk_image;
ramdisk_size = boot_params_p->hdr.ramdisk_size;
initrd_start_early = ramdisk_image;
--
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/