Hi, Jordan
What's your opinion about this problem? Thanks!
Best Regards!
Arei
-----Original Message-----
From: Gonglei (Arei)
Sent: Wednesday, October 17, 2012 9:00 AM
To: 'Jordan Justen'
Cc: [email protected]; Andrei Warkentin
Subject: RE: xen OVMF problem
Jordan,
My environment is xen-4.2-testing + upstream qemu-1.2 + Dom0 (Linux kernel
2.6.32) + OVMF(https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/)
-----Original Message-----
From: Jordan Justen [mailto:[email protected]]
Sent: Wednesday, October 17, 2012 5:21 AM
To: Gonglei (Arei); [email protected]; Andrei Warkentin
Subject: Re: xen OVMF problem
Adding Andrei's current email...
On Tue, Oct 16, 2012 at 2:20 PM, Jordan Justen <[email protected]> wrote:
> On Tue, Oct 16, 2012 at 2:18 AM, Gonglei (Arei) <[email protected]>
> wrote:
>> Hi Jordan,
>> I have gotten more detailed location where it stuck.
>>
>> linux-aVzzFl:~ # xl create win2008.cfg -c
>> Parsing config from win2008.cfg
>> xc: info: VIRTUAL MEMORY ARRANGEMENT:
>> Loader: 0000000000100000->000000000029c344
>> TOTAL: 0000000000000000->000000007f800000
>> ENTRY ADDRESS: 0000000000100000
>> xc: info: PHYSICAL MEMORY ALLOCATION:
>> 4KB PAGES: 0x0000000000000200
>> 2MB PAGES: 0x00000000000003fb
>> 1GB PAGES: 0x0000000000000000
>> Daemon running with PID 3105
>> 16
>> 32
>> b1
>> f1
>> 64
>> ===gl===: 1th hello world!
>> SecCoreStartupWithStack(0x80000000, 0x43636553)
>
> 0x43636553 concerns me here. It is the TopOfCurrentStack parameter,
> and it most likely should be aligned to a reasonable boundary.
>
> On QEMU/KVM I see:
> SecCoreStartupWithStack(0xFFFEC000, 0x80000)
>
> Bei, Andrei,
>
> What do you see when you boot Xen?
>
> Arei, Bei, Andrei,
>
> Can you guys describe your environment so I might try to set up a
> similar Xen based OVMF to help debug things?
>
> Thanks,
>
> -Jordan
>
>> ===gl===: 5th hello world!
>> ===gl===: 1th SecStartupPhase2
>> ===gl===: 1th FindAndReportEntryPoints
>> ===gl===: 1th FindImageBase
>> ===gl===: 1th EFI_NOT_FOUND: 0x80000000
>> ===gl===: 2th FindAndReportEntryPoints, Status=0x80000000
>>
>> ASSERT_EFI_ERROR (Status = 00000000)
>> ASSERT (522976):
>>
>> FindImageBase function:
>> for (EndOfFile = CurrentAddress + BootFirmwareVolumePtr->HeaderLength; ; ) {
>>
>> CurrentAddress = (EndOfFile + 7) & 0xfffffffffffffff8ULL;
>> if (CurrentAddress > EndOfFirmwareVolume) {
>> return EFI_NOT_FOUND; //return from this place
>> }
>>
>> FindAndReportEntryPoints function:
>>
>> // Find SEC Core and PEI Core image base
>> Status = FindImageBase (*BootFirmwareVolumePtr, &SecCoreImageBase);
>> ASSERT_EFI_ERROR (Status); //print the error info
>>
>> -----Original Message-----
>> From: Gonglei (Arei)
>> Sent: Tuesday, October 16, 2012 11:21 AM
>> To: 'Jordan Justen'
>> Cc: [email protected]; [email protected];
>> [email protected]; Luonengjun; Fanhenglong; Hanweidong; Yanqiangjun;
>> Yangxiaowei; Qianhuibin; Wangzhenguo
>> Subject: RE: xen OVMF problem
>>
>> No, I'm not using "-D SOURCE_DEBUG_ENABLE", but adding DEBUG info in the
>> source code.
>>
>> linux-aVzzFl:~# xl create win2008.cfg -c
>> Parsing config from win2008_dc_r2_64_2U.cfg
>> xc: info: VIRTUAL MEMORY ARRANGEMENT:
>> Loader: 0000000000100000->000000000029c344
>> TOTAL: 0000000000000000->000000007f800000
>> ENTRY ADDRESS: 0000000000100000
>> xc: info: PHYSICAL MEMORY ALLOCATION:
>> 4KB PAGES: 0x0000000000000200
>> 2MB PAGES: 0x00000000000003fb
>> 1GB PAGES: 0x0000000000000000
>> Daemon running with PID 11057
>> 16
>> 32
>> b1
>> f1
>> 64
>> ===gl===: 1th hello world!
>> SecCoreStartupWithStack(0x80000000, 0x43636553)
>> ===gl===: 2th hello world!
>> ===gl===: 3th hello world!
>> ===gl===: 4th hello world!
>> ===gl===: 5th hello world!
>>
>> ASSERT_EFI_ERROR (Status = 00000000)
>> ASSERT (522976):
>>
>> The source code:
>>
>> AsmWriteIdtr (&IdtDescriptor);
>> DEBUG((EFI_D_ERROR, "===gl===: 4th hello world!\n"));
>> ... ...
>> //
>> // Make sure the 8259 is masked before initializing the Debug Agent and
>> the debug timer is enabled
>> //
>> IoWrite8 (0x21, 0xff);
>> IoWrite8 (0xA1, 0xff);
>> DEBUG((EFI_D_ERROR, "===gl===: 5th hello world!\n"));
>> //
>> // Initialize Debug Agent to support source level debug in SEC/PEI phases
>> before memory ready.
>> //
>> InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC, &SecCoreData,
>> SecStartupPhase2);
>> DEBUG((EFI_D_ERROR, "===gl===: 6th hello world!\n"));
>>
>> -----Original Message-----
>> From: Jordan Justen [mailto:[email protected]]
>> Sent: Tuesday, October 16, 2012 11:14 AM
>> To: Gonglei (Arei)
>> Cc: [email protected]; [email protected];
>> [email protected]; Luonengjun; Fanhenglong; Hanweidong; Yanqiangjun;
>> Yangxiaowei; Qianhuibin; Wangzhenguo
>> Subject: Re: xen OVMF problem
>>
>> On Mon, Oct 15, 2012 at 7:54 PM, Gonglei (Arei) <[email protected]>
>> wrote:
>>> Thanks Jordan,
>>> I am now doing this as your says. And I get the OVMF debugging output:
>>> linux-aVzzFl:~# xl create win2008.cfg -c
>>> Parsing config from win2008_dc_r2_64_2U.cfg
>>> xc: info: VIRTUAL MEMORY ARRANGEMENT:
>>> Loader: 0000000000100000->000000000029c344
>>> TOTAL: 0000000000000000->000000007f800000
>>> ENTRY ADDRESS: 0000000000100000
>>> xc: info: PHYSICAL MEMORY ALLOCATION:
>>> 4KB PAGES: 0x0000000000000200
>>> 2MB PAGES: 0x00000000000003fb
>>> 1GB PAGES: 0x0000000000000000
>>> Daemon running with PID 30001
>>> 16
>>> 32
>>> b1
>>> f1
>>> 64
>>> SecCoreStartupWithStack(0x80000000, 0x43636553)
>>>
>>> ASSERT_EFI_ERROR (Status = 00000000)
>>> ASSERT (522976):
>>>
>>> --------------------------------------------------------
>>> Using the DEBUG I find it stop in this function: SecCoreStartupWithStack
>>>
>>> line 652: InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC, &SecCoreData,
>>> SecStartupPhase2);
>>> (OvmfPkg/Sec/SecMain.c)
>>
>> Are you using
>> -D SOURCE_DEBUG_ENABLE
>> when building?
>>
>> I recommend not using that at this point.
>>
>> -Jordan
>>
>>> -----Original Message-----
>>> From: Jordan Justen [mailto:[email protected]]
>>> Sent: Monday, October 15, 2012 11:33 PM
>>> To: Gonglei (Arei)
>>> Cc: [email protected]; [email protected];
>>> [email protected]; [email protected]; Luonengjun;
>>> Fanhenglong; Hanweidong; Yanqiangjun; Yangxiaowei; Qianhuibin; Wangzhenguo
>>> Subject: Re: xen OVMF problem
>>>
>>> Ok, I think I understand the issue then. With the latest code you need
>>> this on the build command line to see debug messages printed to the
>>> serial port.
>>>
>>> -D DEBUG_ON_SERIAL_PORT
>>>
>>> Does Xen support QEMU's debug console device?
>>>
>>> -Jordan
>>>
>>> On Mon, Oct 15, 2012 at 1:44 AM, Gonglei (Arei) <[email protected]>
>>> wrote:
>>>> Hi Jordan,
>>>>
>>>> 1) I get the OVMF from
>>>> https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/.
>>>>
>>>> 2) I build the ResetVector code and modify
>>>> UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.inf to use the serial
>>>> debug versions (Bin/ResetVector.x64.serial.raw and
>>>> Bin/ResetVector.ia32.serial.raw).
>>>>
>>>> -Arei
>>>>
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel