lkml.org 
[lkml]   [2012]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    SubjectRE: [PATCH v3 08/10] x86/head64.c: Early update ucode in 64-bit
    Date


    > -----Original Message-----
    > From: yhlu.kernel@gmail.com [mailto:yhlu.kernel@gmail.com] On Behalf Of
    > Yinghai Lu
    > Sent: Sunday, December 16, 2012 4:42 PM
    > To: Yu, Fenghua
    > Cc: H. Peter Anvin; Ingo Molnar; Thomas Gleixner; Mallick, Asit K;
    > Tigran Aivazian; Andreas Herrmann; Borislav Petkov; linux-kernel; x86
    > Subject: Re: [PATCH v3 08/10] x86/head64.c: Early update ucode in 64-
    > bit
    >
    > On Sun, Dec 16, 2012 at 3:59 PM, Yu, Fenghua <fenghua.yu@intel.com>
    > wrote:
    > >
    > >> it has to be rebased after #PF handler version. otherwise it can not
    > >> handle for framdisk
    > >> that is loaded after 1G.
    > >>
    > >> Fenghua,
    > >>
    > >> can you post your boot log with 64bit with your patch?
    > >>
    > >> Yinghai
    > >
    > > Attached is dmesg with the patches.
    > >
    >
    > yes, your laptop only have 1G ram, and
    >
    > [ 0.000000] e820: BIOS-provided physical RAM map:
    > [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff]
    > usable
    > [ 0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000000d2000-0x00000000000d3fff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000003e6affff]
    > usable
    > [ 0.000000] BIOS-e820: [mem 0x000000003e6b0000-0x000000003e6ccfff]
    > ACPI data
    > [ 0.000000] BIOS-e820: [mem 0x000000003e6cd000-0x000000003e6fffff]
    > ACPI NVS
    > [ 0.000000] BIOS-e820: [mem 0x000000003e700000-0x000000003effffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000f0000000-0x00000000f3ffffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec0ffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000fed00000-0x00000000fed003ff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000fed14000-0x00000000fed19fff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000fed1c000-0x00000000fed8ffff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff]
    > reserved
    > [ 0.000000] BIOS-e820: [mem 0x00000000ff000000-0x00000000ffffffff]
    > reserved
    >
    > ramdisk is at
    > RAMDISK: [mem 0x27608000-0x2fafbfff]
    >
    > and current kernel default set 1G to kernel mapping. so it happens to
    > work with your patchset.
    >
    > please find one sytem with 4G or more to test it.
    >
    > and you may need to rebase your patches on top of my for-x86-boot
    > branch with working
    > #PF handler set page table patch.
    >
    > git://git.kernel.org/pub/scm/linux/kernel/git/yinghai/linux-yinghai.git
    > for-x86-boot
    >
    > Thanks
    >
    > Yinghai

    OSV may need the patchset based on old kernel. So I'll have the patchset ready. Is this the right place to call load_ucode_bsp() in the upstream kernel?

    diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c
    index a512f56..e94b90e 100644
    --- a/arch/x86/kernel/head64.c
    +++ b/arch/x86/kernel/head64.c
    @@ -93,6 +88,11 @@ void __init x86_64_start_kernel(char * real_mode_data)
    }
    load_idt((const struct desc_ptr *)&idt_descr);

    + /*
    + * Load microcode early on BSP.
    + */
    + load_ucode_bsp(__va(real_mode_data));
    +
    if (console_loglevel == 10)
    early_printk("Kernel alive\n");


    \
     
     \ /
      Last update: 2012-12-18 01:01    [W:3.094 / U:0.768 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site