Make it possible to boot directly from a virtiofs file system with tag 'myfs' using the following kernel parameters: rootfstype=virtiofs root=myfs rw Booting directly from virtiofs makes it possible to use a directory on the host as the root file system. This is convenient for testing and situations where manipulating disk image files is cumbersome. Signed-off-by: Stefan Hajnoczi <stefanha@xxxxxxxxxx> --- This patch is based on linux-next (next-20190904) but should apply cleanly to other virtiofs trees. init/do_mounts.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/init/do_mounts.c b/init/do_mounts.c index 9634ecf3743d..030be2f1999a 100644 --- a/init/do_mounts.c +++ b/init/do_mounts.c @@ -554,6 +554,16 @@ void __init mount_root(void) change_floppy("root floppy"); } #endif +#ifdef CONFIG_VIRTIO_FS + if (root_fs_names && !strcmp(root_fs_names, "virtiofs")) { + if (!do_mount_root(root_device_name, "virtiofs", + root_mountflags, root_mount_data)) + return; + + panic("VFS: Unable to mount root fs \"%s\" from virtiofs", + root_device_name); + } +#endif #ifdef CONFIG_BLOCK { int err = create_dev("/dev/root", ROOT_DEV); -- 2.21.0