Hi,
Ian, thanks for your reply! It looks like the problem is how and when to clear PV resources in seabios before handing over to guest. But I wonder why virtio works in seabios. Does seabios using virtio need to clear things like vrings? Or seabios doesn't clear the things and guest just covers the configuration with new values?
I think virtio covered this use case from day 1 by having the reset,
That is correct. First thing the kernel driver does as part of the initialization sequence is a reset, to put the device into a known state, no matter where seabios left it off.
Oh, and of course seabios does the same. So even in case the virtio device is in some weird state due to kernel crashing and rebooting seabios will be able to boot from it without any problems.
cheers, Gerd