[SeaBIOS] [Xen-devel] [PATCHv2 0/6] Improved multi-platform support

David Woodhouse dwmw2 at infradead.org
Tue Feb 19 11:51:00 CET 2013


On Tue, 2013-02-19 at 10:20 +0000, Ian Campbell wrote:
> I expect there will be some rough edges like the NV variable thing -- I
> have a feeling these will have a lot in common with qemu/KVM, since they
> would tend to interact with the "platform" (provided by qemu-dm under
> Xen) rather than processor or memory virt etc.

Well, it's mostly just storing text strings describing which device/path
to boot from. So hopefully if the flash storage itself is OK for Xen,
the rest should just work.

> For the most part the I reckon the Xen specific things will be resync
> with a recent upstream and fixup the Xen build system integration, stuff
> like that. 

Current upstream OVMF works, AFAICT. Although as I said, I haven't even
tried booting an OS.

One thing I obviously *also* haven't tested, therefore, is *rebooting*.,
We've discovered a KVM bug on older CPUs without 'unrestricted guest'
mode, where after a reset it actually runs code from 0xffff0 and not
0xfffffff0. With the former being SeaBIOS-CSM, and the latter being the
OVMF startup code that we *should* be running, that's kind of a problem.

If you have a similar bug, please go and fix it so I never have to
know :)

> We'd like to see PV I/O drivers at some point but that's a separate
> project in its own right I think.

If you have an option ROM for them, that might not be a high priority. I
think OVMF can thunk into INT 13h for disk access.

> > And on the subject of the NV storage... does -pflash work on qemu-xen,
> > as long as we're not actually running *code* from the device and we're
> > only using it for data storage?
> 
> I'm not sure, I've CC'd Anthony & Stefano. Assuming the Xen machine type
> in Qemu wires it up then I don't know why it shouldn't work and if we
> don't wire it up I don't see why we couldn't.

Qemu does but not in KVM mode, because it can't *execute* from a region
and also catch writes to properly emulate flash. But for a flash device
that we *don't* execute from, because it's only used for NV storage and
not the firmware itself, that restriction isn't important. So I'll need
to fix that.

> Hvmloader might need to be tweaked to setup the e820 correctly and
> perhaps the some table or other would need to refer to it also?

Right. Haven't quite worked out how it would be 'found' by the firmware
yet. I was going to suggest making the address available via fw_cfg...
but you don't implement that.

-- 
dwmw2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 6171 bytes
Desc: not available
URL: <http://www.seabios.org/pipermail/seabios/attachments/20130219/715fe235/attachment.bin>


More information about the SeaBIOS mailing list