[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [edk2] çå: Windows 2008 r2 smp guest booting hang with viridian=true on ovmf(xen latest version 4.5.1-rc1 + latest edk2)
On 05/20/15 09:24, Fanhenglong wrote: > Can anyone have idea about how to boot window 2008 r2 smp guest in ovmf > with viridian flag is true? I had to confirm first that "viridian" means "Hyper-V", <http://en.wikipedia.org/wiki/Hyper-V>: "Hyper-V, codenamed Viridian, ..." With that out of the way, I can refer you to https://bugzilla.redhat.com/show_bug.cgi?id=1185253 Short version: don't set the "viridian flag"; the guest you're trying to run like that was never meant to be run on Hyper-V. Thanks Laszlo > *åää:*Fanhenglong > *åéæé:*2015å5æ19æ23:22 > *æää:*xen-devel@xxxxxxxxxxxxx > *æé:*'keir@xxxxxxx'; 'paul.durrant@xxxxxxxxxx'; 'jbeulich@xxxxxxxx'; > edk2-devel@xxxxxxxxxxxxxxxxxxxxx; Hanweidong (Randy); Liuqiming (John); > Liuqiming (John) > *äé:*Windows 2008 r2 smp guest booting hang with viridian=true on > ovmf(xen latest version 4.5.1-rc1 + latest edk2) > > > > Hi all, > > > > I have test win2008 r2 guest on ovmf with xen latest version + edk2 latest > > Xen : 4.5.1-rc1 > <http://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=0c4e0ef608c98abef6220b0b027d9ce8ec65fd5f> > > Edk2 : e2ab3f819f4e8165c24bd6f4fdc24ef17bdf458b (date:2015/5/18) > > and come across a problem: > > when the viridian flag is true,win2008 r2 guest can boot success with > unique processor, but will hang with smp processor on ovmf; > > the viridian flag is false, win2008 r2 guest can boot success both in > unique and smp processor on ovmf; > > > > if win2008 r2 with viridian=faulse, it may bring 0x101 bluescreen > > http://old-list-archives.xenproject.org/archives/html/xen-users/2009-07/msg00661.html > > > > I try to resolve the problem, > > I also run the same testcase on kvm and vmvare ,vm also have the same > question, vmare is ok; > > so I print the cupid function return value in vmvare guest os, > > the below table show the detailed information in vmvare guest os, > > get cpu id 0 : 0000000b 756e6547 6c65746e 49656e69 > > get cpu id 1 : 000106a5 00010800 80982201 0fabfbff > > get cpu id 2 : 55035a01 00f0b2e4 00000000 09ca212c > > get cpu id 3 : 00000000 00000000 00000000 00000000 > > get cpu id 4 : 00000000 00000000 00000000 00000000 > > get cpu id 5 : 00000000 00000000 00000000 00000000 > > get cpu id 40000000 : 40000010 61774d56 4d566572 65726177 > > get cpu id 40000001 : 00000000 00000000 00000000 00000000 > > get cpu id 40000002 : 00000000 00000000 00000000 00000000 > > get cpu id 40000003 : 00000000 00000000 00000000 00000000 > > get cpu id 40000004 : 00000000 00000000 00000000 00000000 > > get cpu id 40000005 : 00000000 00000000 00000000 00000000 > > get cpu id 40000006 : 00000000 00000000 00000000 00000000 > > get cpu id 40000070 : 00000000 00000000 000000ac 00000012 > > get cpu id 40000071 : 00000000 00000000 000000ac 00000012 > > get cpu id 40000072 : 00000000 00000000 000000ac 00000012 > > get cpu id 40000073 : 00000000 00000000 000000ac 00000012 > > get cpu id 40000100 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000101 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000102 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000103 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000104 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000105 : 00000000 00000000 000000ac 00000000 > > get cpu id 40000106 : 00000000 00000000 000000ac 00000000 > > get cpu id 80000000 : 80000008 00000000 00000000 00000000 > > get cpu id 80000001 : 00000000 00000000 00000001 28100000 > > get cpu id 80000002 : 65746e49 2952286c 6f655820 2952286e > > get cpu id 80000003 : 55504320 20202020 20202020 45202020 > > get cpu id 80000004 : 30323535 20402020 37322e32 007a4847 > > get cpu id 80000005 : 00000000 00000000 00000000 00000000 > > get cpu id 80000006 : 00000000 00000000 01006040 00000000 > > get cpu id 80000007 : 00000000 00000000 00000000 00000100 > > get cpu id 80000008 : 00003028 00000000 00000000 00000000 > > get cpu id 80000009 : 00000000 00000000 000000ac 00000000 > > > > > > I modified cpuid_viridian_leaves function in > xen/arch/x86/hvm/viridian.c (as the following red bold code) > > to return value 0 for cupid (function=40000001), and win2008 r2 smp > guest can boot success on ovmf; > > > > int cpuid_viridian_leaves(unsigned int leaf, unsigned int *eax, > > unsigned int *ebx, unsigned int *ecx, > > unsigned int *edx) > > { > > struct domain *d = current->domain; > > > > if ( !is_viridian_domain(d) ) > > return 0; > > > > leaf -= 0x40000000; > > if ( leaf > 6 ) > > return 0; > > > > *eax = *ebx = *ecx = *edx = 0; > > switch ( leaf ) > > { > > case 0: > > *eax = 0x40000006; /* Maximum leaf */ > > *ebx = 0x7263694d; /* Magic numbers */ > > *ecx = 0x666F736F; > > *edx = 0x76482074; > > break; > > case 1: > > //original code **eax = 0x31237648; /* Version number */* > > * *eax = 0; //code after modified* > > break; > > > > > > based on hyperv spec, Microsoft Hypervisor CPUID Leaves, > > 0x40000001 > > Hypervisor vendor-neutral interface identification. This determines the > semantics of the leaves from 0x40000002 through 0x400000FF. > > EAX 0x31237648ââHv#1â > > EBX Reserved > > ECX Reserved > > EDX Reserved > > > > May be in xen platform, if window 2008 r2 guest os boot in ovmf, the > cupid(function=0x40000001) must not return EAX 0x31237648ââHv#1â, > > > > Can anyone have idea about how to boot window 2008 r2 guest in ovmf and > do not bring other problem(eg,0x101 bluescreen)? > > > > Thanks! > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > One dashboard for servers and applications across Physical-Virtual-Cloud > Widest out-of-the-box monitoring support with 50+ applications > Performance metrics, stats and reports that give you Actionable Insights > Deep dive visibility with transaction tracing using APM Insight. > http://ad.doubleclick.net/ddm/clk/290420510;117567292;y > > > > _______________________________________________ > edk2-devel mailing list > edk2-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.sourceforge.net/lists/listinfo/edk2-devel > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |