Pasi Kärkkäinen
2009-Aug-19 20:48 UTC
[Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
Hello again! I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with virt-install. I just tried installing Fedora rawhide (F12) guest with virt-install, and the installation fails. # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" Log of the virt-install output available here: http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt Basicly it creates the domain, but it fails to start: # xm list Name ID Mem VCPUs State Time(s) Domain-0 0 986 2 r----- 595.1 test3vm 512 1 0.0 and virt-install gives these errors: libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName Those are printed repeatedly over and over again.. until I cancel the installation with ctrl+c. Any ideas how to debug that? Some more debug info ("xm list --long test3vm" and "xenstore-ls") available from here: http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo.txt -- Pasi
Daniel P. Berrange
2009-Aug-20 08:58 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote:> Hello again! > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > virt-install. > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > installation fails. > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > Log of the virt-install output available here: > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > Basicly it creates the domain, but it fails to start: > > # xm list > > Name ID Mem VCPUs State Time(s) > Domain-0 0 986 2 r----- 595.1 > test3vm 512 1 0.0 > > and virt-install gives these errors: > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > Those are printed repeatedly over and over again.. until I cancel the > installation with ctrl+c.This message Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback shows that virt-install things it is working, and so spawned virt-viewer. libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID are coming from virt-viewer program.> > Any ideas how to debug that? > > Some more debug info ("xm list --long test3vm" and "xenstore-ls") available from here: > http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo.txtCan you file a bug about this - even though Dom0 kernels aren''t in F12, we have the Xen userspace & libvirt driver present & should make sure those do actually work. Include the data from the 2 URLs you have here, and also the xend.log file Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
Pasi Kärkkäinen
2009-Aug-20 09:47 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 09:58:25AM +0100, Daniel P. Berrange wrote:> On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote: > > Hello again! > > > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > > virt-install. > > > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > > installation fails. > > > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > > > Log of the virt-install output available here: > > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > > > Basicly it creates the domain, but it fails to start: > > > > # xm list > > > > Name ID Mem VCPUs State Time(s) > > Domain-0 0 986 2 r----- 595.1 > > test3vm 512 1 0.0 > > > > and virt-install gives these errors: > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > Those are printed repeatedly over and over again.. until I cancel the > > installation with ctrl+c. > > This message > > Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback > > > shows that virt-install things it is working, and so spawned virt-viewer. > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > are coming from virt-viewer program.OK. That''s good to know. I''ll play with it a bit more today. Maybe I should try updating to newer libvirt/virt-viewer first.>From virt-preview repo?> > > > > Any ideas how to debug that? > > > > Some more debug info ("xm list --long test3vm" and "xenstore-ls") available from here: > > http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo.txt > > Can you file a bug about this - even though Dom0 kernels aren''t in F12, > we have the Xen userspace & libvirt driver present & should make sure > those do actually work. >Sure.> Include the data from the 2 URLs you have here, and also the xend.log > file >Should I file it against virt-viewer or virt-install/libvirt ? -- Pasi
Daniel P. Berrange
2009-Aug-20 09:51 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 12:47:50PM +0300, Pasi K?rkk?inen wrote:> On Thu, Aug 20, 2009 at 09:58:25AM +0100, Daniel P. Berrange wrote: > > On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote: > > > Hello again! > > > > > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > > > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > > > virt-install. > > > > > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > > > installation fails. > > > > > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > > > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > > > > > Log of the virt-install output available here: > > > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > > > > > Basicly it creates the domain, but it fails to start: > > > > > > # xm list > > > > > > Name ID Mem VCPUs State Time(s) > > > Domain-0 0 986 2 r----- 595.1 > > > test3vm 512 1 0.0 > > > > > > and virt-install gives these errors: > > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > > > Those are printed repeatedly over and over again.. until I cancel the > > > installation with ctrl+c. > > > > This message > > > > Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback > > > > > > shows that virt-install things it is working, and so spawned virt-viewer. > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > are coming from virt-viewer program. > > OK. That''s good to know. I''ll play with it a bit more today. > > Maybe I should try updating to newer libvirt/virt-viewer first. > From virt-preview repo?That''d be a useful data point if you wish to try it.> > > Any ideas how to debug that? > > > > > > Some more debug info ("xm list --long test3vm" and "xenstore-ls") available from here: > > > http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo.txt > > > > Can you file a bug about this - even though Dom0 kernels aren''t in F12, > > we have the Xen userspace & libvirt driver present & should make sure > > those do actually work. > > > > Sure. > > > Include the data from the 2 URLs you have here, and also the xend.log > > file > > > > Should I file it against virt-viewer or virt-install/libvirt ?Either will do - its not clear yet just which is at fault Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
Pasi Kärkkäinen
2009-Aug-20 15:08 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 10:51:47AM +0100, Daniel P. Berrange wrote:> On Thu, Aug 20, 2009 at 12:47:50PM +0300, Pasi K?rkk?inen wrote: > > On Thu, Aug 20, 2009 at 09:58:25AM +0100, Daniel P. Berrange wrote: > > > On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote: > > > > Hello again! > > > > > > > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > > > > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > > > > virt-install. > > > > > > > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > > > > installation fails. > > > > > > > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > > > > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > > > > > > > Log of the virt-install output available here: > > > > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > > > > > > > Basicly it creates the domain, but it fails to start: > > > > > > > > # xm list > > > > > > > > Name ID Mem VCPUs State Time(s) > > > > Domain-0 0 986 2 r----- 595.1 > > > > test3vm 512 1 0.0 > > > > > > > > and virt-install gives these errors: > > > > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > > > > > Those are printed repeatedly over and over again.. until I cancel the > > > > installation with ctrl+c. > > > > > > This message > > > > > > Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback > > > > > > > > > shows that virt-install things it is working, and so spawned virt-viewer. > > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > > > are coming from virt-viewer program. > > > > OK. That''s good to know. I''ll play with it a bit more today. > > > > Maybe I should try updating to newer libvirt/virt-viewer first. > > From virt-preview repo? > > That''d be a useful data point if you wish to try it. >Hmm.. it seems today I''m getting different error: http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo2.txt http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo2-xm-log.txt virt-install output: Thu, 20 Aug 2009 18:02:47 ERROR POST operation failed: xend_post: error from xen daemon: (xend.err "Error creating domain: (2, ''Invalid kernel'', ''xc_dom_find_loader: no loader found\\n'')") "xm log": [2009-08-20 18:02:47 2161] ERROR (XendDomainInfo:2202) Device model destroy failed X86_Linux_ImageHandler instance has no attribute \047sentinel_lock\047 Something changed in the latest rawhide kernel? # file vmlinuz-PAE vmlinuz-PAE: Linux kernel x86 boot executable bzImage, version 2.6.31-0.162.rc6.git2.fc12.i686, RO-rootFS, root_dev 0x902, swap_dev 0x2, Normal VGA Any ideas? -- Pasi
Pasi Kärkkäinen
2009-Aug-20 15:41 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 06:08:28PM +0300, Pasi Kärkkäinen wrote:> On Thu, Aug 20, 2009 at 10:51:47AM +0100, Daniel P. Berrange wrote: > > On Thu, Aug 20, 2009 at 12:47:50PM +0300, Pasi K?rkk?inen wrote: > > > On Thu, Aug 20, 2009 at 09:58:25AM +0100, Daniel P. Berrange wrote: > > > > On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote: > > > > > Hello again! > > > > > > > > > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > > > > > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > > > > > virt-install. > > > > > > > > > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > > > > > installation fails. > > > > > > > > > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > > > > > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > > > > > > > > > Log of the virt-install output available here: > > > > > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > > > > > > > > > Basicly it creates the domain, but it fails to start: > > > > > > > > > > # xm list > > > > > > > > > > Name ID Mem VCPUs State Time(s) > > > > > Domain-0 0 986 2 r----- 595.1 > > > > > test3vm 512 1 0.0 > > > > > > > > > > and virt-install gives these errors: > > > > > > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > > > > > > > Those are printed repeatedly over and over again.. until I cancel the > > > > > installation with ctrl+c. > > > > > > > > This message > > > > > > > > Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback > > > > > > > > > > > > shows that virt-install things it is working, and so spawned virt-viewer. > > > > > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > > > > > > > are coming from virt-viewer program. > > > > > > OK. That''s good to know. I''ll play with it a bit more today. > > > > > > Maybe I should try updating to newer libvirt/virt-viewer first. > > > From virt-preview repo? > > > > That''d be a useful data point if you wish to try it. > > > > Hmm.. it seems today I''m getting different error: > > http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo2.txt > http://pasik.reaktio.net/fedora/virt-install-rawhide-on-f11-debuginfo2-xm-log.txt > > virt-install output: > Thu, 20 Aug 2009 18:02:47 ERROR POST operation failed: xend_post: error from xen daemon: (xend.err "Error creating domain: (2, ''Invalid kernel'', ''xc_dom_find_loader: no loader found\\n'')") > > "xm log": > [2009-08-20 18:02:47 2161] ERROR (XendDomainInfo:2202) Device model destroy failed X86_Linux_ImageHandler instance has no attribute \047sentinel_lock\047 > > > Something changed in the latest rawhide kernel? > > # file vmlinuz-PAE > vmlinuz-PAE: Linux kernel x86 boot executable bzImage, version 2.6.31-0.162.rc6.git2.fc12.i686, RO-rootFS, root_dev 0x902, swap_dev 0x2, Normal VGA > > > Any ideas? >I just tried without virt-install: # cat test3vm.cfg name = "test3vm" uuid = "9cf2267d-9513-b9b7-bcd9-29f2962c7bd6" maxmem = 512 memory = 512 vcpus = 1 kernel = "/tmp/vmlinuz-PAE" ramdisk = "/tmp/initrd-PAE.img" on_poweroff = "destroy" on_reboot = "preserve" on_crash = "preserve" vfb = [ "type=vnc,vncunused=1" ] disk = [ "phy:vg_dom0test/test3vm,xvda,w" ] vif = [ "mac=00:16:4e:1b:ef:56,bridge=virbr0" ] # xm create -f test3vm.cfg -c Using config file "./test3vm.cfg". Error: (2, ''Invalid kernel'', ''xc_dom_find_loader: no loader found\n'') So same error. # file /tmp/vmlinuz-PAE /tmp/vmlinuz-PAE: Linux kernel x86 boot executable bzImage, version 2.6.31-0.162.rc6.git2.fc12.i686, RO-rootFS, root_dev 0x902, swap_dev 0x2, Normal VGA # grep CONFIG_KERNEL config-2.6.31-0.162.rc6.git2.fc12.i686.PAE # CONFIG_KERNEL_GZIP is not set # CONFIG_KERNEL_BZIP2 is not set CONFIG_KERNEL_LZMA=y OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this changed back to GZIP earlier? -- Pasi
Mark McLoughlin
2009-Aug-20 16:05 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote:> # CONFIG_KERNEL_GZIP is not set > # CONFIG_KERNEL_BZIP2 is not set > CONFIG_KERNEL_LZMA=y > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > changed back to GZIP earlier?Thanks for pointing that out, see: https://bugzilla.redhat.com/show_bug.cgi?id=515831 It got disabled on a branch for the F12 Alpha release, but never got disabled on the devel/ branch. Should be fixed now. Cheers, Mark.
Pasi Kärkkäinen
2009-Aug-20 16:44 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote:> On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > # CONFIG_KERNEL_GZIP is not set > > # CONFIG_KERNEL_BZIP2 is not set > > CONFIG_KERNEL_LZMA=y > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > changed back to GZIP earlier? > > Thanks for pointing that out, see: > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > It got disabled on a branch for the F12 Alpha release, but never got > disabled on the devel/ branch. Should be fixed now. >Thanks. Now I''ll just wait for the next kernel build.. :) (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). -- Pasi
Mark McLoughlin
2009-Aug-20 18:02 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote:> On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > # CONFIG_KERNEL_GZIP is not set > > > # CONFIG_KERNEL_BZIP2 is not set > > > CONFIG_KERNEL_LZMA=y > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > changed back to GZIP earlier? > > > > Thanks for pointing that out, see: > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > It got disabled on a branch for the F12 Alpha release, but never got > > disabled on the devel/ branch. Should be fixed now. > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader).Testing Chris''s patch would certainly be a good idea. LZMA will come back again in Fedora 13, so we should make sure to have the patch in good shape by then Cheers, Mark.
Pasi Kärkkäinen
2009-Aug-20 19:04 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
On Thu, Aug 20, 2009 at 07:02:12PM +0100, Mark McLoughlin wrote:> On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote: > > On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > > > # CONFIG_KERNEL_GZIP is not set > > > > # CONFIG_KERNEL_BZIP2 is not set > > > > CONFIG_KERNEL_LZMA=y > > > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > > changed back to GZIP earlier? > > > > > > Thanks for pointing that out, see: > > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > > > It got disabled on a branch for the F12 Alpha release, but never got > > > disabled on the devel/ branch. Should be fixed now. > > > > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). > > Testing Chris''s patch would certainly be a good idea. LZMA will come > back again in Fedora 13, so we should make sure to have the patch in > good shape by then >I actually already ''ported'' the patch to Xen 3.4.1 and made sure it compiles OK. I''ve included it (and extra gcc 4.4.0 compilefix) to this email, and also sent them to xen-devel. atm I''m trying to make the patch work/apply with Fedora xen-3.4.1-1 src.rpm .. and sorting out some fedora/rpm specific compilation failure.. -- Pasi --w3uUfsyyY1Pqa/ej Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="xen-loader-bzip2-lzma-xen34-fixed.patch" --- xen-3.4-testing.hg/tools/libxc/Makefile.orig 2009-08-20 20:02:53.000000000 +0300 +++ xen-3.4-testing.hg/tools/libxc/Makefile 2009-08-20 19:57:00.000000000 +0300 @@ -150,7 +150,7 @@ ln -sf $< $@ libxenguest.so.$(MAJOR).$(MINOR): $(GUEST_PIC_OBJS) libxenctrl.so - $(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenguest.so.$(MAJOR) $(SHLIB_CFLAGS) -o $@ $(GUEST_PIC_OBJS) -lz -lxenctrl $(PTHREAD_LIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenguest.so.$(MAJOR) $(SHLIB_CFLAGS) -o $@ $(GUEST_PIC_OBJS) -lz -llzma -lbz2 -lxenctrl $(PTHREAD_LIBS) -include $(DEPS) --- xen-3.4-testing.hg/tools/libxc/xc_dom_bzimageloader.c.orig 2009-08-20 20:02:53.000000000 +0300 +++ xen-3.4-testing.hg/tools/libxc/xc_dom_bzimageloader.c 2009-08-20 20:05:44.000000000 +0300 @@ -11,15 +11,208 @@ * written 2006 by Gerd Hoffmann <kraxel@suse.de>. * written 2007 by Jeremy Fitzhardinge <jeremy@xensource.com> * written 2008 by Ian Campbell <ijc@hellion.org.uk> + * written 2009 by Chris Lalancette <clalance@redhat.com> * */ #include <stdio.h> #include <stdlib.h> #include <inttypes.h> +#include <bzlib.h> +#include <lzma.h> #include "xg_private.h" #include "xc_dom.h" +static inline uint64_t physmem(void) +{ + uint64_t ret = 0; + + const long pagesize = sysconf(_SC_PAGESIZE); + const long pages = sysconf(_SC_PHYS_PAGES); + if (pagesize != -1 || pages != -1) + // According to docs, pagesize * pages can overflow. + // Simple case is 32-bit box with 4 GiB or more RAM, + // which may report exactly 4 GiB of RAM, and "long" + // being 32-bit will overflow. Casting to uint64_t + // hopefully avoids overflows in the near future. + ret = (uint64_t)(pagesize) * (uint64_t)(pages); + + return ret; +} + +static int xc_try_bzip2_decode(struct xc_dom_image *dom, void **blob, size_t *size) +{ + bz_stream stream; + int ret; + char *out_buf; + int retval = -1; + int outsize; + uint64_t total; + + stream.bzalloc = NULL; + stream.bzfree = NULL; + stream.opaque = NULL; + + ret = BZ2_bzDecompressInit(&stream, 0, 0); + if (ret != BZ_OK) { + xc_dom_printf("Error initting bz2 stream\n"); + return -1; + } + + /* sigh. We don''t know up-front how much memory we are going to need + * for the output buffer. Allocate the output buffer to be equal + * the input buffer to start, and we''ll realloc as needed. + */ + outsize = dom->kernel_size; + out_buf = malloc(outsize); + if (out_buf == NULL) { + xc_dom_printf("Failed to alloc memory\n"); + goto bzip2_cleanup; + } + + stream.next_in = dom->kernel_blob; + stream.avail_in = dom->kernel_size; + + stream.next_out = out_buf; + stream.avail_out = dom->kernel_size; + + while (1) { + ret = BZ2_bzDecompress(&stream); + if (stream.avail_out == 0 || ret != BZ_OK) { + out_buf = realloc(out_buf, outsize * 2); + if (out_buf == NULL) { + xc_dom_printf("Failed to realloc memory\n"); + break; + } + + stream.next_out = out_buf + outsize; + stream.avail_out = (outsize * 2) - outsize; + outsize *= 2; + } + + if (ret != BZ_OK) { + if (ret == BZ_STREAM_END) { + xc_dom_printf("Saw data stream end\n"); + retval = 0; + break; + } + xc_dom_printf("BZIP error\n"); + } + } + + total = (stream.total_out_hi32 << 31) | stream.total_out_lo32; + + xc_dom_printf("%s: BZIP2 decompress OK, 0x%zx -> 0x%lx\n", __FUNCTION__, *size, total); + + *blob = out_buf; + *size = total; + +bzip2_cleanup: + BZ2_bzDecompressEnd(&stream); + + return retval; +} + +static int xc_try_lzma_decode(struct xc_dom_image *dom, void **blob, size_t *size) +{ + lzma_stream stream = LZMA_STREAM_INIT; + lzma_ret ret; + lzma_action action = LZMA_RUN; + unsigned char *out_buf; + int retval = -1; + int outsize; + const char *msg; + + ret = lzma_alone_decoder(&stream, physmem() / 3); + if (ret != LZMA_OK) { + xc_dom_printf("Failed to init lzma stream decoder\n"); + return -1; + } + + /* sigh. We don''t know up-front how much memory we are going to need + * for the output buffer. Allocate the output buffer to be equal + * the input buffer to start, and we''ll realloc as needed. + */ + outsize = dom->kernel_size; + out_buf = malloc(outsize); + if (out_buf == NULL) { + xc_dom_printf("Failed to alloc memory\n"); + goto lzma_cleanup; + } + + stream.next_in = dom->kernel_blob; + stream.avail_in = dom->kernel_size; + + stream.next_out = out_buf; + stream.avail_out = dom->kernel_size; + + while (1) { + ret = lzma_code(&stream, action); + if (stream.avail_out == 0 || ret != LZMA_OK) { + out_buf = realloc(out_buf, outsize * 2); + if (out_buf == NULL) { + xc_dom_printf("Failed to realloc memory\n"); + break; + } + + stream.next_out = out_buf + outsize; + stream.avail_out = (outsize * 2) - outsize; + outsize *= 2; + } + + if (ret != LZMA_OK) { + if (ret == LZMA_STREAM_END) { + xc_dom_printf("Saw data stream end\n"); + retval = 0; + break; + } + + switch (ret) { + case LZMA_MEM_ERROR: + msg = strerror(ENOMEM); + break; + + case LZMA_MEMLIMIT_ERROR: + msg = "Memory usage limit reached"; + break; + + case LZMA_FORMAT_ERROR: + msg = "File format not recognized"; + break; + + case LZMA_OPTIONS_ERROR: + // FIXME: Better message? + msg = "Unsupported compression options"; + break; + + case LZMA_DATA_ERROR: + msg = "File is corrupt"; + break; + + case LZMA_BUF_ERROR: + msg = "Unexpected end of input"; + break; + + default: + msg = "Internal program error (bug)"; + break; + } + xc_dom_printf("%s: LZMA decompression error %s\n", __FUNCTION__, msg); + break; + } + } + + xc_dom_printf("%s: LZMA decompress OK, 0x%zx -> 0x%zx\n", __FUNCTION__, *size, stream.total_out); + + *blob = out_buf; + *size = stream.total_out; + + lzma_cleanup: + lzma_end(&stream); + + return retval; +} + struct setup_header { uint8_t _pad0[0x1f1]; /* skip uninteresting stuff */ uint8_t setup_sects; @@ -70,22 +263,22 @@ return off; } -static int check_bzimage_kernel(struct xc_dom_image *dom, int verbose) +static int xc_dom_probe_bzimage_kernel(struct xc_dom_image *dom) { struct setup_header *hdr; + int ret; if ( dom->kernel_blob == NULL ) { - if ( verbose ) - xc_dom_panic(XC_INTERNAL_ERROR, "%s: no kernel image loaded\n", - __FUNCTION__); + xc_dom_panic(XC_INTERNAL_ERROR, "%s: no kernel image loaded\n", + __FUNCTION__); return -EINVAL; } + if ( dom->kernel_size < sizeof(struct setup_header) ) { - if ( verbose ) - xc_dom_panic(XC_INTERNAL_ERROR, "%s: kernel image too small\n", - __FUNCTION__); + xc_dom_panic(XC_INTERNAL_ERROR, "%s: kernel image too small\n", + __FUNCTION__); return -EINVAL; } @@ -93,39 +286,54 @@ if ( memcmp(&hdr->header, HDR_MAGIC, HDR_MAGIC_SZ) != 0 ) { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: kernel is not a bzImage\n", - __FUNCTION__); + xc_dom_panic(XC_INVALID_KERNEL, "%s: kernel is not a bzImage\n", + __FUNCTION__); return -EINVAL; } if ( hdr->version < VERSION(2,8) ) { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: boot protocol too old (%04x)\n", - __FUNCTION__, hdr->version); + xc_dom_panic(XC_INVALID_KERNEL, "%s: boot protocol too old (%04x)\n", + __FUNCTION__, hdr->version); return -EINVAL; } dom->kernel_blob = dom->kernel_blob + payload_offset(hdr); dom->kernel_size = hdr->payload_length; - if ( xc_dom_try_gunzip(dom, &dom->kernel_blob, &dom->kernel_size) == -1 ) - { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: unable to decompress kernel\n", + if (memcmp(dom->kernel_blob, "\037\213", 2) == 0) { + ret = xc_dom_try_gunzip(dom, &dom->kernel_blob, &dom->kernel_size); + if (ret == -1) { + xc_dom_panic(XC_INVALID_KERNEL, "%s: unable to gzip decompress kernel\n", + __FUNCTION__); + return -EINVAL; + } + } + else if (memcmp(dom->kernel_blob, "\102\132\150", 3) == 0) { + ret = xc_try_bzip2_decode(dom, &dom->kernel_blob, &dom->kernel_size); + if (ret < 0) { + xc_dom_panic(XC_INVALID_KERNEL, "%s unable to BZIP2 decompress kernel", + __FUNCTION__); + return -EINVAL; + } + } + else if (memcmp(dom->kernel_blob, "\135\000", 2) == 0) { + ret = xc_try_lzma_decode(dom, &dom->kernel_blob, &dom->kernel_size); + if (ret < 0) { + xc_dom_panic(XC_INVALID_KERNEL, "%s unable to LZMA decompress kernel\n", __FUNCTION__); + return -EINVAL; + } + } + else { + xc_dom_panic(XC_INVALID_KERNEL, "%s: unknown compression format\n", + __FUNCTION__); return -EINVAL; } return elf_loader.probe(dom); } -static int xc_dom_probe_bzimage_kernel(struct xc_dom_image *dom) -{ - return check_bzimage_kernel(dom, 0); -} - static int xc_dom_parse_bzimage_kernel(struct xc_dom_image *dom) { return elf_loader.parser(dom); --w3uUfsyyY1Pqa/ej Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="xen-loader-bzip2-lzma-xen34-fixed-compilefix-gcc440.patch" --- xen-3.4-testing.hg/tools/libxc/xc_dom_bzimageloader.c.prev 2009-08-20 20:05:44.000000000 +0300 +++ xen-3.4-testing.hg/tools/libxc/xc_dom_bzimageloader.c 2009-08-20 21:05:11.000000000 +0300 @@ -102,7 +102,7 @@ total = (stream.total_out_hi32 << 31) | stream.total_out_lo32; - xc_dom_printf("%s: BZIP2 decompress OK, 0x%zx -> 0x%lx\n", __FUNCTION__, *size, total); + xc_dom_printf("%s: BZIP2 decompress OK, 0x%zx -> 0x%lx\n", __FUNCTION__, *size, (long unsigned int) total); *blob = out_buf; *size = total; @@ -202,7 +202,7 @@ } } - xc_dom_printf("%s: LZMA decompress OK, 0x%zx -> 0x%zx\n", __FUNCTION__, *size, stream.total_out); + xc_dom_printf("%s: LZMA decompress OK, 0x%zx -> 0x%zx\n", __FUNCTION__, *size, (size_t) stream.total_out); *blob = out_buf; *size = stream.total_out; --w3uUfsyyY1Pqa/ej--
Pasi Kärkkäinen
2009-Aug-23 16:45 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
On Thu, Aug 20, 2009 at 10:04:09PM +0300, Pasi Kärkkäinen wrote:> On Thu, Aug 20, 2009 at 07:02:12PM +0100, Mark McLoughlin wrote: > > On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote: > > > On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > > > > > # CONFIG_KERNEL_GZIP is not set > > > > > # CONFIG_KERNEL_BZIP2 is not set > > > > > CONFIG_KERNEL_LZMA=y > > > > > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > > > changed back to GZIP earlier? > > > > > > > > Thanks for pointing that out, see: > > > > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > > > > > It got disabled on a branch for the F12 Alpha release, but never got > > > > disabled on the devel/ branch. Should be fixed now. > > > > > > > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > > > > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). > > > > Testing Chris''s patch would certainly be a good idea. LZMA will come > > back again in Fedora 13, so we should make sure to have the patch in > > good shape by then > > > > I actually already ''ported'' the patch to Xen 3.4.1 and made sure it > compiles OK. I''ve included it (and extra gcc 4.4.0 compilefix) to this > email, and also sent them to xen-devel. > > atm I''m trying to make the patch work/apply with Fedora xen-3.4.1-1 src.rpm .. > and sorting out some fedora/rpm specific compilation failure.. >Here''s updated patch that actually works. I added it to xen-3.4.1-1.src.rpm and verified the resulting rpms are able to boot lzma compressed kernels. It''s still not final patch, since the stubdom/pvgrub bzip2/lzma support is not yet included in this patch (until the proper method for Makefile hacks is determined upstream). -- Pasi --y9PDtDHaFrXNoMPU Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="xen-341-add-bzip2-lzma-pv-bootloader-support-no-stubdom-pvgrub.patch" --- xen-3.4-testing.hg/tools/libxc/Makefile 2009-08-23 16:00:35.000000000 +0300 +++ xen-unstable.hg/tools/libxc/Makefile 2009-08-23 19:22:12.000000000 +0300 @@ -84,7 +86,7 @@ all: build .PHONY: build -build: +build: .zlib.deps $(MAKE) libs .PHONY: libs @@ -112,7 +114,7 @@ .PHONY: clean clean: - rm -rf *.rpm $(LIB) *~ $(DEPS) \ + rm -rf *.rpm $(LIB) *~ $(DEPS) .*.deps \ $(CTRL_LIB_OBJS) $(CTRL_PIC_OBJS) \ $(GUEST_LIB_OBJS) $(GUEST_PIC_OBJS) @@ -149,6 +151,34 @@ libxenguest.so.$(MAJOR): libxenguest.so.$(MAJOR).$(MINOR) ln -sf $< $@ +ifeq ($(CONFIG_MiniOS),y) +.zlib.deps: + echo >$@ +else +.zlib.deps: + @(set -e; \ + . ../check/funcs.sh; \ + echo >$@.new; \ + if has_header bzlib.h; then \ + echo "-DHAVE_BZLIB" >>$@.new; \ + echo "-lbz2" >>$@.new; \ + echo " - BZIP2 decompression supported"; \ + fi; \ + if has_header lzma.h; then \ + echo "-DHAVE_LZMA" >>$@.new; \ + echo "-llzma" >>$@.new; \ + echo " - LZMA decompression supported"; \ + fi; \ + mv $@.new $@) +endif + +xc_dom_bzimageloader.o: .zlib.deps +xc_dom_bzimageloader.o: CFLAGS += $(shell grep D .zlib.deps) + +xc_dom_bzimageloader.opic: .zlib.deps +xc_dom_bzimageloader.opic: CFLAGS += $(shell grep D .zlib.deps) + +libxenguest.so.$(MAJOR).$(MINOR): LDFLAGS += $(shell grep l .zlib.deps) libxenguest.so.$(MAJOR).$(MINOR): $(GUEST_PIC_OBJS) libxenctrl.so $(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenguest.so.$(MAJOR) $(SHLIB_CFLAGS) -o $@ $(GUEST_PIC_OBJS) -lz -lxenctrl $(PTHREAD_LIBS) --- xen-3.4-testing.hg/tools/libxc/xc_dom_bzimageloader.c 2009-08-23 16:00:35.000000000 +0300 +++ xen-unstable.hg/tools/libxc/xc_dom_bzimageloader.c 2009-08-23 17:36:28.000000000 +0300 @@ -11,6 +11,7 @@ * written 2006 by Gerd Hoffmann <kraxel@suse.de>. * written 2007 by Jeremy Fitzhardinge <jeremy@xensource.com> * written 2008 by Ian Campbell <ijc@hellion.org.uk> + * written 2009 by Chris Lalancette <clalance@redhat.com> * */ #include <stdio.h> @@ -20,43 +21,291 @@ #include "xg_private.h" #include "xc_dom.h" +#if defined(HAVE_BZLIB) + +#include <bzlib.h> + +static int xc_try_bzip2_decode( + struct xc_dom_image *dom, void **blob, size_t *size) +{ + bz_stream stream; + int ret; + char *out_buf; + int retval = -1; + int outsize; + uint64_t total; + + stream.bzalloc = NULL; + stream.bzfree = NULL; + stream.opaque = NULL; + + ret = BZ2_bzDecompressInit(&stream, 0, 0); + if ( ret != BZ_OK ) + { + xc_dom_printf("Error initting bz2 stream\n"); + return -1; + } + + /* sigh. We don''t know up-front how much memory we are going to need + * for the output buffer. Allocate the output buffer to be equal + * the input buffer to start, and we''ll realloc as needed. + */ + outsize = dom->kernel_size; + out_buf = malloc(outsize); + if ( out_buf == NULL ) + { + xc_dom_printf("Failed to alloc memory\n"); + goto bzip2_cleanup; + } + + stream.next_in = dom->kernel_blob; + stream.avail_in = dom->kernel_size; + + stream.next_out = out_buf; + stream.avail_out = dom->kernel_size; + + for ( ; ; ) + { + ret = BZ2_bzDecompress(&stream); + if ( (stream.avail_out == 0) || (ret != BZ_OK) ) + { + out_buf = realloc(out_buf, outsize * 2); + if ( out_buf == NULL ) + { + xc_dom_printf("Failed to realloc memory\n"); + break; + } + + stream.next_out = out_buf + outsize; + stream.avail_out = (outsize * 2) - outsize; + outsize *= 2; + } + + if ( ret != BZ_OK ) + { + if ( ret == BZ_STREAM_END ) + { + xc_dom_printf("Saw data stream end\n"); + retval = 0; + break; + } + xc_dom_printf("BZIP error\n"); + } + } + + total = (stream.total_out_hi32 << 31) | stream.total_out_lo32; + + xc_dom_printf("%s: BZIP2 decompress OK, 0x%zx -> 0x%lx\n", + __FUNCTION__, *size, (long unsigned int) total); + + *blob = out_buf; + *size = total; + + bzip2_cleanup: + BZ2_bzDecompressEnd(&stream); + + return retval; +} + +#else /* !defined(HAVE_BZLIB) */ + +static int xc_try_bzip2_decode( + struct xc_dom_image *dom, void **blob, size_t *size) +{ + xc_dom_printf("%s: BZIP2 decompress support unavailable\n", + __FUNCTION__); + return -1; +} + +#endif + +#if defined(HAVE_LZMA) + +#include <lzma.h> + +static uint64_t physmem(void) +{ + uint64_t ret = 0; + const long pagesize = sysconf(_SC_PAGESIZE); + const long pages = sysconf(_SC_PHYS_PAGES); + + if ( (pagesize != -1) || (pages != -1) ) + { + /* + * According to docs, pagesize * pages can overflow. + * Simple case is 32-bit box with 4 GiB or more RAM, + * which may report exactly 4 GiB of RAM, and "long" + * being 32-bit will overflow. Casting to uint64_t + * hopefully avoids overflows in the near future. + */ + ret = (uint64_t)(pagesize) * (uint64_t)(pages); + } + + return ret; +} + +static int xc_try_lzma_decode( + struct xc_dom_image *dom, void **blob, size_t *size) +{ + lzma_stream stream = LZMA_STREAM_INIT; + lzma_ret ret; + lzma_action action = LZMA_RUN; + unsigned char *out_buf; + int retval = -1; + int outsize; + const char *msg; + + xc_dom_printf("\nbeginning of xc_try_lzma_decode\n"); + + ret = lzma_alone_decoder(&stream, physmem() / 3); + if ( ret != LZMA_OK ) + { + xc_dom_printf("Failed to init lzma stream decoder\n"); + return -1; + } + + /* sigh. We don''t know up-front how much memory we are going to need + * for the output buffer. Allocate the output buffer to be equal + * the input buffer to start, and we''ll realloc as needed. + */ + outsize = dom->kernel_size; + out_buf = malloc(outsize); + if ( out_buf == NULL ) + { + xc_dom_printf("Failed to alloc memory\n"); + goto lzma_cleanup; + } + + stream.next_in = dom->kernel_blob; + stream.avail_in = dom->kernel_size; + + stream.next_out = out_buf; + stream.avail_out = dom->kernel_size; + + for ( ; ; ) + { + ret = lzma_code(&stream, action); + if ( (stream.avail_out == 0) || (ret != LZMA_OK) ) + { + out_buf = realloc(out_buf, outsize * 2); + if ( out_buf == NULL ) + { + xc_dom_printf("Failed to realloc memory\n"); + break; + } + + stream.next_out = out_buf + outsize; + stream.avail_out = (outsize * 2) - outsize; + outsize *= 2; + } + + if ( ret != LZMA_OK ) + { + if ( ret == LZMA_STREAM_END ) + { + xc_dom_printf("Saw data stream end\n"); + retval = 0; + break; + } + + switch ( ret ) + { + case LZMA_MEM_ERROR: + msg = strerror(ENOMEM); + break; + + case LZMA_MEMLIMIT_ERROR: + msg = "Memory usage limit reached"; + break; + + case LZMA_FORMAT_ERROR: + msg = "File format not recognized"; + break; + + case LZMA_OPTIONS_ERROR: + // FIXME: Better message? + msg = "Unsupported compression options"; + break; + + case LZMA_DATA_ERROR: + msg = "File is corrupt"; + break; + + case LZMA_BUF_ERROR: + msg = "Unexpected end of input"; + break; + + default: + msg = "Internal program error (bug)"; + break; + } + xc_dom_printf("%s: LZMA decompression error %s\n", + __FUNCTION__, msg); + break; + } + } + + xc_dom_printf("%s: LZMA decompress OK, 0x%zx -> 0x%zx\n", + __FUNCTION__, *size, (size_t)stream.total_out); + + *blob = out_buf; + *size = stream.total_out; + + lzma_cleanup: + lzma_end(&stream); + + return retval; +} + +#else /* !defined(HAVE_LZMA) */ + +static int xc_try_lzma_decode( + struct xc_dom_image *dom, void **blob, size_t *size) +{ + xc_dom_printf("%s: LZMA decompress support unavailable\n", + __FUNCTION__); + return -1; +} + +#endif + struct setup_header { - uint8_t _pad0[0x1f1]; /* skip uninteresting stuff */ - uint8_t setup_sects; - uint16_t root_flags; - uint32_t syssize; - uint16_t ram_size; - uint16_t vid_mode; - uint16_t root_dev; - uint16_t boot_flag; - uint16_t jump; - uint32_t header; -#define HDR_MAGIC "HdrS" -#define HDR_MAGIC_SZ 4 - uint16_t version; -#define VERSION(h,l) (((h)<<8) | (l)) - uint32_t realmode_swtch; - uint16_t start_sys; - uint16_t kernel_version; - uint8_t type_of_loader; - uint8_t loadflags; - uint16_t setup_move_size; - uint32_t code32_start; - uint32_t ramdisk_image; - uint32_t ramdisk_size; - uint32_t bootsect_kludge; - uint16_t heap_end_ptr; - uint16_t _pad1; - uint32_t cmd_line_ptr; - uint32_t initrd_addr_max; - uint32_t kernel_alignment; - uint8_t relocatable_kernel; - uint8_t _pad2[3]; - uint32_t cmdline_size; - uint32_t hardware_subarch; - uint64_t hardware_subarch_data; - uint32_t payload_offset; - uint32_t payload_length; + uint8_t _pad0[0x1f1]; /* skip uninteresting stuff */ + uint8_t setup_sects; + uint16_t root_flags; + uint32_t syssize; + uint16_t ram_size; + uint16_t vid_mode; + uint16_t root_dev; + uint16_t boot_flag; + uint16_t jump; + uint32_t header; +#define HDR_MAGIC "HdrS" +#define HDR_MAGIC_SZ 4 + uint16_t version; +#define VERSION(h,l) (((h)<<8) | (l)) + uint32_t realmode_swtch; + uint16_t start_sys; + uint16_t kernel_version; + uint8_t type_of_loader; + uint8_t loadflags; + uint16_t setup_move_size; + uint32_t code32_start; + uint32_t ramdisk_image; + uint32_t ramdisk_size; + uint32_t bootsect_kludge; + uint16_t heap_end_ptr; + uint16_t _pad1; + uint32_t cmd_line_ptr; + uint32_t initrd_addr_max; + uint32_t kernel_alignment; + uint8_t relocatable_kernel; + uint8_t _pad2[3]; + uint32_t cmdline_size; + uint32_t hardware_subarch; + uint64_t hardware_subarch_data; + uint32_t payload_offset; + uint32_t payload_length; } __attribute__((packed)); extern struct xc_dom_loader elf_loader; @@ -70,22 +319,28 @@ return off; } -static int check_bzimage_kernel(struct xc_dom_image *dom, int verbose) +static int xc_dom_probe_bzimage_kernel(struct xc_dom_image *dom) { struct setup_header *hdr; + int ret; + + xc_dom_printf("\nxc_dom_probe_bzimage_kernel\n"); + +#if defined(HAVE_LZMA) + xc_dom_printf("\nEXTRA DEBUG: HAVE_LZMA defined\n"); +#endif if ( dom->kernel_blob == NULL ) { - if ( verbose ) - xc_dom_panic(XC_INTERNAL_ERROR, "%s: no kernel image loaded\n", - __FUNCTION__); + xc_dom_panic(XC_INTERNAL_ERROR, "%s: no kernel image loaded\n", + __FUNCTION__); return -EINVAL; } + if ( dom->kernel_size < sizeof(struct setup_header) ) { - if ( verbose ) - xc_dom_panic(XC_INTERNAL_ERROR, "%s: kernel image too small\n", - __FUNCTION__); + xc_dom_panic(XC_INTERNAL_ERROR, "%s: kernel image too small\n", + __FUNCTION__); return -EINVAL; } @@ -93,39 +348,68 @@ if ( memcmp(&hdr->header, HDR_MAGIC, HDR_MAGIC_SZ) != 0 ) { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: kernel is not a bzImage\n", - __FUNCTION__); + xc_dom_panic(XC_INVALID_KERNEL, "%s: kernel is not a bzImage\n", + __FUNCTION__); return -EINVAL; } if ( hdr->version < VERSION(2,8) ) { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: boot protocol too old (%04x)\n", - __FUNCTION__, hdr->version); + xc_dom_panic(XC_INVALID_KERNEL, "%s: boot protocol too old (%04x)\n", + __FUNCTION__, hdr->version); return -EINVAL; } dom->kernel_blob = dom->kernel_blob + payload_offset(hdr); dom->kernel_size = hdr->payload_length; - if ( xc_dom_try_gunzip(dom, &dom->kernel_blob, &dom->kernel_size) == -1 ) + xc_dom_printf("\nbefore first memcmp\n"); + if ( memcmp(dom->kernel_blob, "\037\213", 2) == 0 ) + { + xc_dom_printf("\nbefore xc_dom_try_gunzip\n"); + ret = xc_dom_try_gunzip(dom, &dom->kernel_blob, &dom->kernel_size); + if ( ret == -1 ) + { + xc_dom_panic(XC_INVALID_KERNEL, + "%s: unable to gzip decompress kernel\n", + __FUNCTION__); + return -EINVAL; + } + } + else if ( memcmp(dom->kernel_blob, "\102\132\150", 3) == 0 ) { - if ( verbose ) - xc_dom_panic(XC_INVALID_KERNEL, "%s: unable to decompress kernel\n", + xc_dom_printf("\nbefore xc_try_bzip2_decode\n"); + ret = xc_try_bzip2_decode(dom, &dom->kernel_blob, &dom->kernel_size); + if ( ret < 0 ) + { + xc_dom_panic(XC_INVALID_KERNEL, + "%s unable to BZIP2 decompress kernel", __FUNCTION__); + return -EINVAL; + } + } + else if ( memcmp(dom->kernel_blob, "\135\000", 2) == 0 ) + { + xc_dom_printf("\nbefore xc_try_lzma_decode\n"); + ret = xc_try_lzma_decode(dom, &dom->kernel_blob, &dom->kernel_size); + if ( ret < 0 ) + { + xc_dom_panic(XC_INVALID_KERNEL, + "%s unable to LZMA decompress kernel\n", + __FUNCTION__); + return -EINVAL; + } + } + else + { + xc_dom_panic(XC_INVALID_KERNEL, "%s: unknown compression format\n", + __FUNCTION__); return -EINVAL; } return elf_loader.probe(dom); } -static int xc_dom_probe_bzimage_kernel(struct xc_dom_image *dom) -{ - return check_bzimage_kernel(dom, 0); -} - static int xc_dom_parse_bzimage_kernel(struct xc_dom_image *dom) { return elf_loader.parser(dom); @@ -145,6 +429,7 @@ static void __init register_loader(void) { + xc_dom_printf("\n__init bzImage loader\n"); xc_dom_register_loader(&bzimage_loader); } --y9PDtDHaFrXNoMPU--
Pasi Kärkkäinen
2009-Aug-23 17:30 UTC
Re: [Fedora-xen] libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID while virt-installing rawhide
On Thu, Aug 20, 2009 at 09:58:25AM +0100, Daniel P. Berrange wrote:> On Wed, Aug 19, 2009 at 11:48:54PM +0300, Pasi K?rkk?inen wrote: > > Hello again! > > > > I''m running Fedora 11 with 2.6.31-rc6 pv_ops Xen dom0 kernel and Xen 3.4.1. > > I''m able to succesfully install Fedora 11 and CentOS 5.3 PV guests with > > virt-install. > > > > I just tried installing Fedora rawhide (F12) guest with virt-install, and the > > installation fails. > > > > # virt-install --debug -n test3vm -r 512 --vcpus=1 -f /dev/vg_dom0test/test3vm > > --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os" > > > > Log of the virt-install output available here: > > http://pasik.reaktio.net/fedora/virt-install-log-rawhide-on-f11.txt > > > > Basicly it creates the domain, but it fails to start: > > > > # xm list > > > > Name ID Mem VCPUs State Time(s) > > Domain-0 0 986 2 r----- 595.1 > > test3vm 512 1 0.0 > > > > and virt-install gives these errors: > > > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > > > > Those are printed repeatedly over and over again.. until I cancel the > > installation with ctrl+c. > > This message > > Wed, 19 Aug 2009 21:20:40 DEBUG Launching console callback > > > shows that virt-install things it is working, and so spawned virt-viewer. > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByID > > are coming from virt-viewer program. >Back to this issue after the LZMA stuff was sorted out :) You''re right.. those errors are coming from virt-viewer: # virt-viewer foo-bar-non-existing-domain libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName Btw there''s a typo in the error msg;) The actual problem seems to be this: [2009-08-23 20:26:51 1046] INFO (XendDomain:1180) Domain test3vm (9) unpaused. [2009-08-23 20:26:51 1046] WARNING (XendDomainInfo:1878) Domain has crashed: name=test3vm id=9. So the rawhide/F12 kernel crashes immediately.. nothing on the console(s). Any ideas? I guess this is related to the other known problems with the 2.6.31 kernel as PV domU? -- Pasi
Boris Derzhavets
2009-Aug-24 04:58 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
Could you remind F12 rawhide location on the Net for --location key for virt-install command line to test on 64-bit . Thanks. Boris. --- On Sun, 8/23/09, Pasi Kärkkäinen <pasik@iki.fi> wrote: From: Pasi Kärkkäinen <pasik@iki.fi> Subject: Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader To: "Mark McLoughlin" <markmc@redhat.com> Cc: fedora-xen@redhat.com Date: Sunday, August 23, 2009, 12:45 PM On Thu, Aug 20, 2009 at 10:04:09PM +0300, Pasi Kärkkäinen wrote:> On Thu, Aug 20, 2009 at 07:02:12PM +0100, Mark McLoughlin wrote: > > On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote: > > > On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > > > > > # CONFIG_KERNEL_GZIP is not set > > > > > # CONFIG_KERNEL_BZIP2 is not set > > > > > CONFIG_KERNEL_LZMA=y > > > > > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > > > changed back to GZIP earlier? > > > > > > > > Thanks for pointing that out, see: > > > > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > > > > > It got disabled on a branch for the F12 Alpha release, but never got > > > > disabled on the devel/ branch. Should be fixed now. > > > > > > > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > > > > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). > > > > Testing Chris''s patch would certainly be a good idea. LZMA will come > > back again in Fedora 13, so we should make sure to have the patch in > > good shape by then > > > > I actually already ''ported'' the patch to Xen 3.4.1 and made sure it > compiles OK. I''ve included it (and extra gcc 4.4.0 compilefix) to this > email, and also sent them to xen-devel. > > atm I''m trying to make the patch work/apply with Fedora xen-3.4.1-1 src.rpm .. > and sorting out some fedora/rpm specific compilation failure.. >Here''s updated patch that actually works. I added it to xen-3.4.1-1.src.rpm and verified the resulting rpms are able to boot lzma compressed kernels. It''s still not final patch, since the stubdom/pvgrub bzip2/lzma support is not yet included in this patch (until the proper method for Makefile hacks is determined upstream). -- Pasi -----Inline Attachment Follows----- -- Fedora-xen mailing list Fedora-xen@redhat.com https://www.redhat.com/mailman/listinfo/fedora-xen
On Sun, Aug 23, 2009 at 09:58:18PM -0700, Boris Derzhavets wrote:> Could you remind F12 rawhide location on the Net for --location key for virt-install command line to test on 64-bit . >For example: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/i386/os -- Pasi> Thanks. > Boris. > > --- On Sun, 8/23/09, Pasi Kärkkäinen <pasik@iki.fi> wrote: > > From: Pasi Kärkkäinen <pasik@iki.fi> > Subject: Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader > To: "Mark McLoughlin" <markmc@redhat.com> > Cc: fedora-xen@redhat.com > Date: Sunday, August 23, 2009, 12:45 PM > > On Thu, Aug 20, 2009 at 10:04:09PM +0300, Pasi Kärkkäinen wrote: > > On Thu, Aug 20, 2009 at 07:02:12PM +0100, Mark McLoughlin wrote: > > > On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote: > > > > On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > > > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > > > > > > > # CONFIG_KERNEL_GZIP is not set > > > > > > # CONFIG_KERNEL_BZIP2 is not set > > > > > > CONFIG_KERNEL_LZMA=y > > > > > > > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > > > > changed back to GZIP earlier? > > > > > > > > > > Thanks for pointing that out, see: > > > > > > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > > > > > > > It got disabled on a branch for the F12 Alpha release, but never got > > > > > disabled on the devel/ branch. Should be fixed now. > > > > > > > > > > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > > > > > > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). > > > > > > Testing Chris''s patch would certainly be a good idea. LZMA will come > > > back again in Fedora 13, so we should make sure to have the patch in > > > good shape by then > > > > > > > I actually already ''ported'' the patch to Xen 3.4.1 and made sure it > > compiles OK. I''ve included it (and extra gcc 4.4.0 compilefix) to this > > email, and also sent them to xen-devel. > > > > atm I''m trying to make the patch work/apply with Fedora xen-3.4.1-1 src.rpm .. > > and sorting out some fedora/rpm specific compilation failure.. > > > > Here''s updated patch that actually works. I added it to xen-3.4.1-1.src.rpm > and verified the resulting rpms are able to boot lzma compressed kernels. > > It''s still not final patch, since the stubdom/pvgrub bzip2/lzma support is > not yet included in this patch (until the proper method for Makefile hacks > is determined upstream). > > -- Pasi > > -----Inline Attachment Follows----- > > -- > Fedora-xen mailing list > Fedora-xen@redhat.com > https://www.redhat.com/mailman/listinfo/fedora-xen > > > >
Boris Derzhavets
2009-Aug-24 11:22 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
Fresh install Xen 3.4.1 via xen-3.4.1-1.src.rpm with LZMA support patch + libvirt 0.7.0-6 (preview) tested OK with F11 PV DomU install. Kernel (supporting Dom0 ) - 2.6.30.2 xenified aka Suse Attempt to install F12 PV DomU ( Core2Duo E8400, 8 GB RAM ,SATA ) :- [root@ServerXenSRC ~]# virt-install --debug -n f12pv -r 1024 --vcpus=1 \ -f /dev/sda12 --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os" Mon, 24 Aug 2009 14:36:36 DEBUG Launched with command line: /usr/sbin/virt-install --debug -n f12pv -r 1024 --vcpus=1 -f /dev/sda12 --vnc -p -l ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os Mon, 24 Aug 2009 14:36:36 DEBUG Requesting libvirt URI default Mon, 24 Aug 2009 14:36:36 DEBUG Received libvirt URI xen:/// Mon, 24 Aug 2009 14:36:36 DEBUG Requesting virt method ''xen'', hv type ''default''. Mon, 24 Aug 2009 14:36:36 DEBUG Received virt method ''xen'' Mon, 24 Aug 2009 14:36:36 DEBUG Hypervisor name is ''xen'' Mon, 24 Aug 2009 14:36:36 DEBUG DistroInstaller location is a network source. Starting install... Mon, 24 Aug 2009 14:36:36 DEBUG Attempting to detect distro: Mon, 24 Aug 2009 14:36:37 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/.treeinfo Mon, 24 Aug 2009 14:36:39 DEBUG Saved file to /var/lib/xen/virtinst-.treeinfo.WVH7xk Retrieving file .treeinfo... | 1.2 kB 00:00 Mon, 24 Aug 2009 14:36:39 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/vmlinuz Mon, 24 Aug 2009 14:37:11 DEBUG Saved file to /var/lib/xen/virtinst-vmlinuz.gFkrVE kB/s | 3.5 MB 00:30 Retrieving file vmlinuz... | 3.5 MB 00:30 Mon, 24 Aug 2009 14:37:11 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/initrd.img Mon, 24 Aug 2009 14:40:23 DEBUG Saved file to /var/lib/xen/virtinst-initrd.img.IFk0Bn/s | 22 MB 03:10 Retrieving file initrd.img... | 22 MB 03:10 Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS type as: linux Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS variant as: fedora12 Mon, 24 Aug 2009 14:40:23 DEBUG Creating guest from: <domain type=''xen''> <name>f12pv</name> <currentMemory>1048576</currentMemory> <memory>1048576</memory> <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> <os> <type arch=''x86_64''>linux</type> <kernel>/var/lib/xen/virtinst-vmlinuz.gFkrVE</kernel> <initrd>/var/lib/xen/virtinst-initrd.img.IFk0Bn</initrd> <cmdline>method=ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os</cmdline> </os> <on_poweroff>destroy</on_poweroff> <on_reboot>destroy</on_reboot> <on_crash>destroy</on_crash> <vcpu>1</vcpu> <devices> <disk type=''block'' device=''disk''> <source dev=''/dev/sda12''/> <target dev=''xvda'' bus=''xen''/> </disk> <interface type=''bridge''> <source bridge=''eth0''/> <mac address=''00:16:36:23:d9:66''/> </interface> <input type=''mouse'' bus=''xen''/> <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> </devices> </domain> Creating domain... | 0 B 00:01 Mon, 24 Aug 2009 14:40:24 DEBUG Created guest, looking to see if it is running Mon, 24 Aug 2009 14:40:24 DEBUG Launching console callback Mon, 24 Aug 2009 14:40:24 DEBUG Saving XML boot config: <domain type=''xen''> <name>f12pv</name> <currentMemory>1048576</currentMemory> <memory>1048576</memory> <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> <bootloader>/usr/bin/pygrub</bootloader> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <vcpu>1</vcpu> <devices> <disk type=''block'' device=''disk''> <source dev=''/dev/sda12''/> <target dev=''xvda'' bus=''xen''/> </disk> <interface type=''bridge''> <source bridge=''eth0''/> <mac address=''00:16:36:23:d9:66''/> </interface> <input type=''mouse'' bus=''xen''/> <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> </devices> </domain> Virt-viewer hangs with message "Waiting for guest domain to be created" Boris --- On Sun, 8/23/09, Pasi Kärkkäinen <pasik@iki.fi> wrote: From: Pasi Kärkkäinen <pasik@iki.fi> Subject: Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader To: "Mark McLoughlin" <markmc@redhat.com> Cc: fedora-xen@redhat.com Date: Sunday, August 23, 2009, 12:45 PM On Thu, Aug 20, 2009 at 10:04:09PM +0300, Pasi Kärkkäinen wrote:> On Thu, Aug 20, 2009 at 07:02:12PM +0100, Mark McLoughlin wrote: > > On Thu, 2009-08-20 at 19:44 +0300, Pasi Kärkkäinen wrote: > > > On Thu, Aug 20, 2009 at 05:05:17PM +0100, Mark McLoughlin wrote: > > > > On Thu, 2009-08-20 at 18:41 +0300, Pasi Kärkkäinen wrote: > > > > > > > > > # CONFIG_KERNEL_GZIP is not set > > > > > # CONFIG_KERNEL_BZIP2 is not set > > > > > CONFIG_KERNEL_LZMA=y > > > > > > > > > > OK, so the problem is the rawhide kernel is LZMA compressed. Wasn''t this > > > > > changed back to GZIP earlier? > > > > > > > > Thanks for pointing that out, see: > > > > > > > > https://bugzilla.redhat.com/show_bug.cgi?id=515831 > > > > > > > > It got disabled on a branch for the F12 Alpha release, but never got > > > > disabled on the devel/ branch. Should be fixed now. > > > > > > > > > > Thanks. Now I''ll just wait for the next kernel build.. :) > > > > > > (or try applying the patch Chris sent to support BZIP2 and LZMA for Xen PV bootloader). > > > > Testing Chris''s patch would certainly be a good idea. LZMA will come > > back again in Fedora 13, so we should make sure to have the patch in > > good shape by then > > > > I actually already ''ported'' the patch to Xen 3.4.1 and made sure it > compiles OK. I''ve included it (and extra gcc 4.4.0 compilefix) to this > email, and also sent them to xen-devel. > > atm I''m trying to make the patch work/apply with Fedora xen-3.4.1-1 src.rpm .. > and sorting out some fedora/rpm specific compilation failure.. >Here''s updated patch that actually works. I added it to xen-3.4.1-1.src.rpm and verified the resulting rpms are able to boot lzma compressed kernels. It''s still not final patch, since the stubdom/pvgrub bzip2/lzma support is not yet included in this patch (until the proper method for Makefile hacks is determined upstream). -- Pasi -----Inline Attachment Follows----- -- Fedora-xen mailing list Fedora-xen@redhat.com https://www.redhat.com/mailman/listinfo/fedora-xen
Pasi Kärkkäinen
2009-Aug-24 12:26 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
On Mon, Aug 24, 2009 at 04:22:30AM -0700, Boris Derzhavets wrote:> Fresh install Xen 3.4.1 via xen-3.4.1-1.src.rpm with LZMA support patch + libvirt 0.7.0-6 (preview) tested OK with F11 PV DomU install. Kernel (supporting Dom0 ) - 2.6.30.2 xenified aka Suse > > Attempt to install F12 PV DomU ( Core2Duo E8400, 8 GB RAM ,SATA ) :- > > [root@ServerXenSRC ~]# virt-install --debug -n f12pv -r 1024 --vcpus=1 \ > -f /dev/sda12 --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os" > > Mon, 24 Aug 2009 14:36:36 DEBUG Launched with command line: > /usr/sbin/virt-install --debug -n f12pv -r 1024 --vcpus=1 -f /dev/sda12 --vnc -p -l ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting libvirt URI default > Mon, 24 Aug 2009 14:36:36 DEBUG Received libvirt URI xen:/// > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting virt method ''xen'', hv type ''default''. > Mon, 24 Aug 2009 14:36:36 DEBUG Received virt method ''xen'' > Mon, 24 Aug 2009 14:36:36 DEBUG Hypervisor name is ''xen'' > Mon, 24 Aug 2009 14:36:36 DEBUG DistroInstaller location is a network source. > > > Starting install... > Mon, 24 Aug 2009 14:36:36 DEBUG Attempting to detect distro: > Mon, 24 Aug 2009 14:36:37 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/.treeinfo > Mon, 24 Aug 2009 14:36:39 DEBUG Saved file to /var/lib/xen/virtinst-.treeinfo.WVH7xk > Retrieving file .treeinfo... | 1.2 kB 00:00 > Mon, 24 Aug 2009 14:36:39 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/vmlinuz > Mon, 24 Aug 2009 14:37:11 DEBUG Saved file to /var/lib/xen/virtinst-vmlinuz.gFkrVE kB/s | 3.5 MB 00:30 > Retrieving file vmlinuz... | 3.5 MB 00:30 > Mon, 24 Aug 2009 14:37:11 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/initrd.img > Mon, 24 Aug 2009 14:40:23 DEBUG Saved file to /var/lib/xen/virtinst-initrd.img.IFk0Bn/s | 22 MB 03:10 > Retrieving file initrd.img... | 22 MB 03:10 > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS type as: linux > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS variant as: fedora12 > Mon, 24 Aug 2009 14:40:23 DEBUG Creating guest from: > <domain type=''xen''> > <name>f12pv</name> > <currentMemory>1048576</currentMemory> > <memory>1048576</memory> > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > <os> > <type arch=''x86_64''>linux</type> > <kernel>/var/lib/xen/virtinst-vmlinuz.gFkrVE</kernel> > <initrd>/var/lib/xen/virtinst-initrd.img.IFk0Bn</initrd> > <cmdline>method=ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os</cmdline> > </os> > <on_poweroff>destroy</on_poweroff> > <on_reboot>destroy</on_reboot> > <on_crash>destroy</on_crash> > <vcpu>1</vcpu> > <devices> > <disk type=''block'' device=''disk''> > <source dev=''/dev/sda12''/> > <target dev=''xvda'' bus=''xen''/> > </disk> > <interface type=''bridge''> > <source bridge=''eth0''/> > <mac address=''00:16:36:23:d9:66''/> > </interface> > <input type=''mouse'' bus=''xen''/> > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > </devices> > </domain> > > Creating domain... | 0 B 00:01 > Mon, 24 Aug 2009 14:40:24 DEBUG Created guest, looking to see if it is running > Mon, 24 Aug 2009 14:40:24 DEBUG Launching console callback > Mon, 24 Aug 2009 14:40:24 DEBUG Saving XML boot config: > <domain type=''xen''> > <name>f12pv</name> > <currentMemory>1048576</currentMemory> > <memory>1048576</memory> > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > <bootloader>/usr/bin/pygrub</bootloader> > <on_poweroff>destroy</on_poweroff> > <on_reboot>restart</on_reboot> > <on_crash>restart</on_crash> > <vcpu>1</vcpu> > <devices> > <disk type=''block'' device=''disk''> > <source dev=''/dev/sda12''/> > <target dev=''xvda'' bus=''xen''/> > </disk> > <interface type=''bridge''> > <source bridge=''eth0''/> > <mac address=''00:16:36:23:d9:66''/> > </interface> > <input type=''mouse'' bus=''xen''/> > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > </devices> > </domain> > > Virt-viewer hangs with message "Waiting for guest domain to be created" >Check "xm log" - for me the guest crashes immediately. This is a known bug in F12/rawhide kernel. -- Pasi
Boris Derzhavets
2009-Aug-24 12:41 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
Do you mean, that you experiencing same issue on 32-bit and patch is supposed to handle only just startup phase ? Boris. --- On Mon, 8/24/09, Pasi Kärkkäinen <pasik@iki.fi> wrote: From: Pasi Kärkkäinen <pasik@iki.fi> Subject: Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader To: "Boris Derzhavets" <bderzhavets@yahoo.com> Cc: "Mark McLoughlin" <markmc@redhat.com>, fedora-xen@redhat.com Date: Monday, August 24, 2009, 8:26 AM On Mon, Aug 24, 2009 at 04:22:30AM -0700, Boris Derzhavets wrote:> Fresh install Xen 3.4.1 via xen-3.4.1-1.src.rpm with LZMA support patch + libvirt 0.7.0-6 (preview) tested OK with F11 PV DomU install. Kernel (supporting Dom0 ) - 2.6.30.2 xenified aka Suse > > Attempt to install F12 PV DomU ( Core2Duo E8400, 8 GB RAM ,SATA ) :- > > [root@ServerXenSRC ~]# virt-install --debug -n f12pv -r 1024 --vcpus=1 \ > -f /dev/sda12 --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os" > > Mon, 24 Aug 2009 14:36:36 DEBUG Launched with command line: > /usr/sbin/virt-install --debug -n f12pv -r 1024 --vcpus=1 -f /dev/sda12 --vnc -p -l ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting libvirt URI default > Mon, 24 Aug 2009 14:36:36 DEBUG Received libvirt URI xen:/// > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting virt method ''xen'', hv type ''default''. > Mon, 24 Aug 2009 14:36:36 DEBUG Received virt method ''xen'' > Mon, 24 Aug 2009 14:36:36 DEBUG Hypervisor name is ''xen'' > Mon, 24 Aug 2009 14:36:36 DEBUG DistroInstaller location is a network source. > > > Starting install... > Mon, 24 Aug 2009 14:36:36 DEBUG Attempting to detect distro: > Mon, 24 Aug 2009 14:36:37 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/.treeinfo > Mon, 24 Aug 2009 14:36:39 DEBUG Saved file to /var/lib/xen/virtinst-.treeinfo.WVH7xk > Retrieving file .treeinfo... | 1.2 kB 00:00 > Mon, 24 Aug 2009 14:36:39 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/vmlinuz > Mon, 24 Aug 2009 14:37:11 DEBUG Saved file to /var/lib/xen/virtinst-vmlinuz.gFkrVE kB/s | 3.5 MB 00:30 > Retrieving file vmlinuz... | 3.5 MB 00:30 > Mon, 24 Aug 2009 14:37:11 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/initrd.img > Mon, 24 Aug 2009 14:40:23 DEBUG Saved file to /var/lib/xen/virtinst-initrd.img.IFk0Bn/s | 22 MB 03:10 > Retrieving file initrd.img... | 22 MB 03:10 > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS type as: linux > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS variant as: fedora12 > Mon, 24 Aug 2009 14:40:23 DEBUG Creating guest from: > <domain type=''xen''> > <name>f12pv</name> > <currentMemory>1048576</currentMemory> > <memory>1048576</memory> > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > <os> > <type arch=''x86_64''>linux</type> > <kernel>/var/lib/xen/virtinst-vmlinuz.gFkrVE</kernel> > <initrd>/var/lib/xen/virtinst-initrd.img.IFk0Bn</initrd> > <cmdline>method=ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os > </os> > <on_poweroff>destroy</on_poweroff> > <on_reboot>destroy</on_reboot> > <on_crash>destroy</on_crash> > <vcpu>1</vcpu> > <devices> > <disk type=''block'' device=''disk''> > <source dev=''/dev/sda12''/> > <target dev=''xvda'' bus=''xen''/> > </disk> > <interface type=''bridge''> > <source bridge=''eth0''/> > <mac address=''00:16:36:23:d9:66''/> > </interface> > <input type=''mouse'' bus=''xen''/> > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > </devices> > </domain> > > Creating domain... | 0 B 00:01 > Mon, 24 Aug 2009 14:40:24 DEBUG Created guest, looking to see if it is running > Mon, 24 Aug 2009 14:40:24 DEBUG Launching console callback > Mon, 24 Aug 2009 14:40:24 DEBUG Saving XML boot config: > <domain type=''xen''> > <name>f12pv</name> > <currentMemory>1048576</currentMemory> > <memory>1048576</memory> > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > <bootloader>/usr/bin/pygrub</bootloader> > <on_poweroff>destroy</on_poweroff> > <on_reboot>restart</on_reboot> > <on_crash>restart</on_crash> > <vcpu>1</vcpu> > <devices> > <disk type=''block'' device=''disk''> > <source dev=''/dev/sda12''/> > <target dev=''xvda'' bus=''xen''/> > </disk> > <interface type=''bridge''> > <source bridge=''eth0''/> > <mac address=''00:16:36:23:d9:66''/> > </interface> > <input type=''mouse'' bus=''xen''/> > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > </devices> > </domain> > > Virt-viewer hangs with message "Waiting for guest domain to be created" >Check "xm log" - for me the guest crashes immediately. This is a known bug in F12/rawhide kernel. -- Pasi
Pasi Kärkkäinen
2009-Aug-24 13:14 UTC
Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader
On Mon, Aug 24, 2009 at 05:41:03AM -0700, Boris Derzhavets wrote:> Do you mean, that you experiencing same issue on 32-bit and patch is supposed > to handle only just startup phase ? >Yes, I''m seeing the same problem. My patch (for lzma support) doesn''t help with this kernel bug. -- Pasi> Boris. > > > --- On Mon, 8/24/09, Pasi Kärkkäinen <pasik@iki.fi> wrote: > > From: Pasi Kärkkäinen <pasik@iki.fi> > Subject: Re: [Fedora-xen] BZIP2 and LZMA support patch for Xen PV domU bootloader > To: "Boris Derzhavets" <bderzhavets@yahoo.com> > Cc: "Mark McLoughlin" <markmc@redhat.com>, fedora-xen@redhat.com > Date: Monday, August 24, 2009, 8:26 AM > > On Mon, Aug 24, 2009 at 04:22:30AM -0700, Boris Derzhavets wrote: > > Fresh install Xen 3.4.1 via xen-3.4.1-1.src.rpm with LZMA support patch + libvirt 0.7.0-6 (preview) tested OK with F11 PV DomU install. Kernel (supporting Dom0 ) - 2.6.30.2 xenified aka Suse > > > > Attempt to install F12 PV DomU ( Core2Duo E8400, 8 GB RAM ,SATA ) :- > > > > [root@ServerXenSRC ~]# virt-install --debug -n f12pv -r 1024 --vcpus=1 \ > > -f /dev/sda12 --vnc -p -l "ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os" > > > > Mon, 24 Aug 2009 14:36:36 DEBUG Launched with command line: > > /usr/sbin/virt-install --debug -n f12pv -r 1024 --vcpus=1 -f /dev/sda12 --vnc -p -l ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os > > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting libvirt URI default > > Mon, 24 Aug 2009 14:36:36 DEBUG Received libvirt URI xen:/// > > Mon, 24 Aug 2009 14:36:36 DEBUG Requesting virt method ''xen'', hv type ''default''. > > Mon, 24 Aug 2009 14:36:36 DEBUG Received virt method ''xen'' > > Mon, 24 Aug 2009 14:36:36 DEBUG Hypervisor name is ''xen'' > > Mon, 24 Aug 2009 14:36:36 DEBUG DistroInstaller location is a network source. > > > > > > Starting install... > > Mon, 24 Aug 2009 14:36:36 DEBUG Attempting to detect distro: > > Mon, 24 Aug 2009 14:36:37 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/.treeinfo > > Mon, 24 Aug 2009 14:36:39 DEBUG Saved file to /var/lib/xen/virtinst-.treeinfo.WVH7xk > > Retrieving file .treeinfo... | 1.2 kB 00:00 > > Mon, 24 Aug 2009 14:36:39 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/vmlinuz > > Mon, 24 Aug 2009 14:37:11 DEBUG Saved file to /var/lib/xen/virtinst-vmlinuz.gFkrVE kB/s | 3.5 MB 00:30 > > Retrieving file vmlinuz... | 3.5 MB 00:30 > > Mon, 24 Aug 2009 14:37:11 DEBUG Fetching URI: ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os/images/pxeboot/initrd.img > > Mon, 24 Aug 2009 14:40:23 DEBUG Saved file to /var/lib/xen/virtinst-initrd.img.IFk0Bn/s | 22 MB 03:10 > > Retrieving file initrd.img... | 22 MB 03:10 > > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS type as: linux > > Mon, 24 Aug 2009 14:40:23 DEBUG Auto detected OS variant as: fedora12 > > Mon, 24 Aug 2009 14:40:23 DEBUG Creating guest from: > > <domain type=''xen''> > > <name>f12pv</name> > > <currentMemory>1048576</currentMemory> > > <memory>1048576</memory> > > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > > <os> > > <type arch=''x86_64''>linux</type> > > <kernel>/var/lib/xen/virtinst-vmlinuz.gFkrVE</kernel> > > <initrd>/var/lib/xen/virtinst-initrd.img.IFk0Bn</initrd> > > <cmdline>method=ftp://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/development/x86_64/os > > </os> > > <on_poweroff>destroy</on_poweroff> > > <on_reboot>destroy</on_reboot> > > <on_crash>destroy</on_crash> > > <vcpu>1</vcpu> > > <devices> > > <disk type=''block'' device=''disk''> > > <source dev=''/dev/sda12''/> > > <target dev=''xvda'' bus=''xen''/> > > </disk> > > <interface type=''bridge''> > > <source bridge=''eth0''/> > > <mac address=''00:16:36:23:d9:66''/> > > </interface> > > <input type=''mouse'' bus=''xen''/> > > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > > </devices> > > </domain> > > > > Creating domain... | 0 B 00:01 > > Mon, 24 Aug 2009 14:40:24 DEBUG Created guest, looking to see if it is running > > Mon, 24 Aug 2009 14:40:24 DEBUG Launching console callback > > Mon, 24 Aug 2009 14:40:24 DEBUG Saving XML boot config: > > <domain type=''xen''> > > <name>f12pv</name> > > <currentMemory>1048576</currentMemory> > > <memory>1048576</memory> > > <uuid>3279f520-308c-127c-c7e6-be66fb36fa7b</uuid> > > <bootloader>/usr/bin/pygrub</bootloader> > > <on_poweroff>destroy</on_poweroff> > > <on_reboot>restart</on_reboot> > > <on_crash>restart</on_crash> > > <vcpu>1</vcpu> > > <devices> > > <disk type=''block'' device=''disk''> > > <source dev=''/dev/sda12''/> > > <target dev=''xvda'' bus=''xen''/> > > </disk> > > <interface type=''bridge''> > > <source bridge=''eth0''/> > > <mac address=''00:16:36:23:d9:66''/> > > </interface> > > <input type=''mouse'' bus=''xen''/> > > <graphics type=''vnc'' port=''-1'' keymap=''en-us''/> > > </devices> > > </domain> > > > > Virt-viewer hangs with message "Waiting for guest domain to be created" > > > > Check "xm log" - for me the guest crashes immediately. > > This is a known bug in F12/rawhide kernel. > > -- Pasi > > > >