----- Original Message ----- From: "Avi Kivity" <avi@xxxxxxxxxx> To: "Alex Jia" <ajia@xxxxxxxxxx> Cc: "Andrew Holway" <a.holway@xxxxxxxxxxxx>, kvm@xxxxxxxxxxxxxxx Sent: Tuesday, September 4, 2012 7:44:36 PM Subject: Re: [libvirt-users] vm pxe fail On 09/04/2012 02:31 PM, Alex Jia wrote: > ----- Original Message ----- > From: "Avi Kivity" <avi@xxxxxxxxxx> > To: "Alex Jia" <ajia@xxxxxxxxxx> > Cc: "Andrew Holway" <a.holway@xxxxxxxxxxxx>, kvm@xxxxxxxxxxxxxxx > Sent: Monday, September 3, 2012 9:27:08 PM > Subject: Re: [libvirt-users] vm pxe fail > > On 08/31/2012 05:37 PM, Alex Jia wrote: >> Hi Andrew, >> Great, BTW, in fact, you may pxe boot via VF of Intel82576, however, Intel82576 SR-IOV network adapters >> don't provide a ROM BIOS for the cards virtual functions (VF), but an image of such a ROM is available, >> and with this ROM visible to the guest, it can PXE boot. >> >> In libvirt's xml, you need to configure guest XML like this: >> >> <hostdev mode='subsystem' type='pci' managed='yes'> >> <source> >> <address bus='XX' slot='XX' function='XX'/> >> </source> >> <boot order='1'/> >> <rom bar='on' file='/xxxx/ipxe-808610ca.rom'/> >> </hostdev> >> >> You need to build a ipxe-808610ca.rom by yourself, if you're interested in this, >> please refer to http://ipxe.org/. > > Is there a way to automate this? Perhaps a database matching PCI IDs > and ipxe .roms, which qemu could consult? > > Hi Avi, > Good question, I haven't try this via qemu yet, from libvirt POV, basically, we may filter and parse 'lspci' > or 'virsh nodedev-list --tree' output to get a bus, slot and function number then add them into above guest > XML, WRT above 'ipxe-808610ca.rom' file, we may directly 'git clone git://git.ipxe.org/ipxe.git' then compile > it and generate a .rom file such as 82576.rom or use a vendor+product id as a rom name if you like. We could have qemu autoload /usr/share/qemu/roms/vendor-device.rom, and symlink /usr/share/qemu/roms to /usr/share/ipxe/roms or something. Avi, good to know these, thanks :) -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html