On Fri, 2014-09-19 at 07:07 +0000, Fan, Jeff wrote: > Chen & Jordan, > > I encountered on exception as blew on Ubuntu12.04 (on virtual machine by > Virtual Box, VT-x enabled) with GCC46. Log is attached. Do you have any idea > on it? > > $ qemu-system-i386 -smp 4 -serial file:ovmf.log > > Could not access KVM kernel module: No such file or directory > failed to initialize KVM: No such file or directory
I think you probably did not load the KVM modules. and used the qemu command with --enable-kvm. Thanks, Chen > Back to tcg accelerator. > qemu: fatal: Trying to execute code outside RAM or ROM at 0x000a0000 > > EAX=00000000 EBX=00000000 ECX=00000000 EDX=00000633 > ESI=00000000 EDI=00001ff8 EBP=00000000 ESP=00000000 > EIP=00000ffc EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0 > ES =0000 00000000 0000ffff 00009300 > CS =9f00 0009f000 0000ffff 00009b00 > SS =0000 00000000 0000ffff 00009300 > DS =0000 00000000 0000ffff 00009300 > FS =0000 00000000 0000ffff 00009300 > GS =0000 00000000 0000ffff 00009300 > LDT=0000 00000000 0000ffff 00008200 > TR =0000 00000000 0000ffff 00008b00 > GDT= 00000000 0000ffff > IDT= 00000000 0000ffff > CR0=60000010 CR2=00000000 CR3=00000000 CR4=00000000 > DR0=00000000 DR1=00000000 DR2=00000000 DR3=00000000 > DR6=ffff0ff0 DR7=00000400 > CCS=00000000 CCD=00000000 CCO=SUBW > EFER=0000000000000000 > FCW=037f FSW=0000 [ST=0] FTW=00 MXCSR=00001f80 > FPR0=0000000000000000 0000 FPR1=0000000000000000 0000 > FPR2=0000000000000000 0000 FPR3=0000000000000000 0000 > FPR4=0000000000000000 0000 FPR5=0000000000000000 0000 > FPR6=0000000000000000 0000 FPR7=0000000000000000 0000 > XMM00=00000000000000000000000000000000 XMM01=00000000000000000000000000000000 > XMM02=00000000000000000000000000000000 XMM03=00000000000000000000000000000000 > XMM04=00000000000000000000000000000000 XMM05=00000000000000000000000000000000 > XMM06=00000000000000000000000000000000 XMM07=00000000000000000000000000000000 > Aborted (core dumped) > > Thanks! > Jeff > -----Original Message----- > From: Chen Fan [mailto:[email protected]] > Sent: Thursday, September 18, 2014 11:12 AM > To: [email protected] > Cc: Jordan Justen; Fan, Jeff; Andrew Fish > Subject: [RFC v3 00/19] Introduce Mp Service protocol to UefiCpuPkg > > This series patchset try to implement Mp Service protocol in UefiCpuPkg, > Jordan had implemented the startup APs code, and I try to add more > initialization code to let all APs work up, this Mp Service protocol's > implementation used EmulatorPkg/MpService for reference. > this patches works on my github: > https://github.com/ChenFanFnst/edk2/tree/cpu-mp-service > > V2-V3: > 1. rebase codes due to Jordan'tree updated: > https://github.com/jljusten/edk2/tree/ap-startup-example > 2. add supported on Ia32 arch > 3. add a new Lock to replace present SpinLock mechanisms in mutilple > processors, maybe the SpinLock mechanisms is not MP safe. > 4. add function header > 5. add StartupAllAPs() supported > 6. add SwitchBSP() function, which is unsupported. > > V1-V2: > 1. do not call anything EFI API from APs. > 2. add AP busy-wait for task assignment from BSP and get rid of > IPI sent mechanism. > > TODO: > 1) StartupThisAP/StartAllAps: when Timeout expires before AP returns > from Procedure, constrainedly terminate the executed Procedure. > > Any Comment is welcome. > > Chen Fan (13): > UefiCpuPkg/CpuDxe: Introduce AsmApDoneWithCommonStack > UefiCpuPkg/CpuDxe: Waiting for Aps initialization done > UefiCpuPkg/CpuDxe: Switch Ap CommonStack with NewStack > UefiCpuPkg/CpuDxe: install Mp Service protocol > UefiCpuPkg/CpuDxe: implement Mp Protocol: GetNumberOfProcessors() > UefiCpuPkg/CpuDxe: implement Mp Protocol: WhoAmI() > UefiCpuPkg/CpuDxe: implement Mp Services: GetProcessorInfo() > UefiCpuPkg/CpuDxe: implement Mp Protocol: EnableDisableAP() > UefiCpuPkg/CpuDxe: implement Mp Protocol: StartupThisAP() > UefiCpuPkg/CpuDxe: introduce CPU bus lock for sync data > UefiCpuPkg/CpuDxe: implement Mp Services: StartupAllAPs() > UefiCpuPkg/CpuDxe: implement Mp Services: SwitchBSP() > UefiCpuPkg/CpuDxe: add Mp Service TestCase > > Jordan Justen (6): > UefiCpuPkg/CpuDxe: Add no-op InitializeMpSupport > UefiCpuPkg/CpuDxe: Add ApEntryPointInC > UefiCpuPkg/CpuDxe: Add stackless assembly AP entry points > UefiCpuPkg/CpuDxe: Move GDT structures into CpuGdt.h > UefiCpuPkg/CpuDxe: Add StartApsStackless routine > UefiCpuPkg/CpuDxe: Startup APs > > UefiCpuPkg/CpuDxe/ApStartup.asm | 111 +++ > UefiCpuPkg/CpuDxe/ApStartup.c | 209 ++++++ > UefiCpuPkg/CpuDxe/CpuDxe.c | 5 + > UefiCpuPkg/CpuDxe/CpuDxe.inf | 8 + > UefiCpuPkg/CpuDxe/CpuGdt.c | 52 +- > UefiCpuPkg/CpuDxe/CpuGdt.h | 72 ++ > UefiCpuPkg/CpuDxe/CpuMp.c | 1349 > +++++++++++++++++++++++++++++++++++++ > UefiCpuPkg/CpuDxe/CpuMp.h | 643 ++++++++++++++++++ > UefiCpuPkg/CpuDxe/CpuMpTest.c | 76 +++ > UefiCpuPkg/CpuDxe/Ia32/MpAsm.S | 109 +++ > UefiCpuPkg/CpuDxe/Ia32/MpAsm.nasm | 144 ++++ > UefiCpuPkg/CpuDxe/X64/MpAsm.S | 111 +++ > UefiCpuPkg/CpuDxe/X64/MpAsm.nasm | 142 ++++ > 13 files changed, 2980 insertions(+), 51 deletions(-) create mode 100644 > UefiCpuPkg/CpuDxe/ApStartup.asm create mode 100644 > UefiCpuPkg/CpuDxe/ApStartup.c create mode 100644 UefiCpuPkg/CpuDxe/CpuGdt.h > create mode 100644 UefiCpuPkg/CpuDxe/CpuMp.c create mode 100644 > UefiCpuPkg/CpuDxe/CpuMp.h create mode 100644 UefiCpuPkg/CpuDxe/CpuMpTest.c > create mode 100644 UefiCpuPkg/CpuDxe/Ia32/MpAsm.S create mode 100644 > UefiCpuPkg/CpuDxe/Ia32/MpAsm.nasm create mode 100644 > UefiCpuPkg/CpuDxe/X64/MpAsm.S create mode 100644 > UefiCpuPkg/CpuDxe/X64/MpAsm.nasm > > -- > 1.9.3 > ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that Matters. http://pubads.g.doubleclick.net/gampad/clk?id=160591471&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
