Hi Kuan-Wei, On 2026-07-06T21:54:42, Kuan-Wei Chiu <[email protected]> wrote:
> It allows U-Boot to directly mount host directories in virtualization > environments via virtio. Thanks for working on this - a nice feature which has been missing for a while. My main concern is the overall design. The transport driver registers a single global client which the filesystem layer picks up, so there can only ever be one 9P device and the QEMU mount tag is ignored. Since the transport is already a driver-model device, please can you attach the client state to the udevice and have the filesystem layer look up the device, rather than using a global? That would let the user select a particular device (or mount tag) in the ls and load commands instead of passing a dash, and would fit better with the rest of U-Boot. Related to this, intercepting the 9p interface name in the generic filesystem code feels like a hack. It would be better to integrate with the existing device/partition handling, perhaps along the lines of semihosting. > The functionality has been verified on qemu arm64 by successfully > loading a Linux kernel image and an initramfs image via 9P, and booting > to the Linux shell. For the tests Tom asked for, one option would be a sandbox transport driver (see the existing sandbox virtio support) so the protocol and filesystem code can be exercised in CI without QEMU, plus a pytest for the QEMU side. A doc/usage page showing the QEMU flags and U-Boot commands from this cover letter would be a good start for the docs. Regards, Simon

