[gPXE] [RFC] gPXE fw_cfg file interface support

Stefan Hajnoczi stefanha at gmail.com
Wed Jan 27 04:42:07 EST 2010


This patch makes it possible for gPXE under QEMU/KVM to fetch files from the
host using the fw_cfg file interface.  This means gPXE in the guest can fetch an
exposed file from the host without using networking.

I believe this feature will be useful to management software so that
network boot
configuration can be managed alongside with the virtual machine configuration,
not on a remote TFTP server.

Any interest in this feature?  I imagine libvirt could use this to set
up iSCSI or
other network boot settings.

Images are fetched from the hypervisor using the fw_cfg interface provided by
QEMU/KVM.  The URI syntax is as follows:

gPXE> imgfetch fw_cfg:genroms/static.gpxe

where 'fw_cfg' is the new URI scheme this patch adds and 'genroms/static.gpxe'
is the filename exported from QEMU/KVM via the fw_cfg interface.

Note that the URI uses a single colon ':', not '://', since there is no
hostname.

Current QEMU/KVM builds can be (ab)used to expose arbitrary files
like this:

qemu -option-rom path/to/file [...]

The file will appear as 'genroms/file'.  Use the 'fw_cfg:genroms/file' URI to
reference it in gPXE.

The fw_cfg file interface is a recent addition to QEMU/KVM.  You may need to
build QEMU/KVM from source in order to get this feature.

Note that this patch only adds the fw_cfg file interface mechanism, it does not
automatically probe for a special file when gPXE starts.  You will
need to manually
"chain fw_cfg:genroms/file".

Any comments?

Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fw_cfg.patch
Type: text/x-diff
Size: 11328 bytes
Desc: not available
Url : http://etherboot.org/pipermail/gpxe/attachments/20100127/876e7513/attachment.bin 


More information about the gPXE mailing list