VirtFS—A paravirtual File System pass-through in KVM/QEMU

This proposal has been rejected.


One Line Summary

VirtFS is a paravirtual file system pass-through in the KVM/QEMU environment. We would like to discuss and take community view/help on resolving some of the current issues and more advanced features.


VirtFS introduces a paravirtual file system driver based on the VirtIO framework. This interface presents a number of unique advantages over the traditional virtual block device. The majority of applications (including most hypervisors) prefer to interact with an Operating System’s storage API through the file system interfaces instead of dedicated disk storage APIs. By paravirtualizing a file system interface, we avoid a layer of indirection in converting guest application file system operations into block device operations and then again into host file system operations. Traditional distributed file system (such as NFS or CIFS) over a virtualized network device to access storage is also not very good solution as these protocols are not designed for virtualization and has various security and double caching issues.

The development is progressing at brisk pace and the feature is already in the mainline (QEMU 0.13 and mainline kernel). We will take this opportunity to briefly update the community with our progress and discuss and take community view/help on the following.

Resolving some of the hot problems we are facing:

  • interfaces missing/needed for user-level fileservers
  • 9P fid management issues
  • Linux ACL (Posix and Rich)

More advanced areas:

  • API discussion for value-add modules like locking management, security management, storage management.
  • Sharing page cache and dcache between host and the guest.
  • Alternate security models
  • Efficiently bridging virtfs to distribtued file systems


KVM, Virtualization, file system, QEMU, virtfs, filesystems


  • Jv_p1


    Venkateswararao Jujjuri (JV) works in IBM’s Linux Technology Center as Sr. Software Engineer and is currently leading an effort to develop the VirtFS filesystem pass-through over KVM and QEMU using 9p. Prior to this assignment JV worked on various Linux and Unix technologies like Real-Time, Distributed File Systems (SANFS), Clusters(HACMP) and storage virtaulization (SANVC).

  • Headshot-square

    Eric Van Hensbergen

    IBM Research


    Eric Van Hensbergen is currently a research staff member in the Future Systems department at IBM’s Austin Research Lab. Over the past four years at IBM, he has worked on low-power dense server and network processor appliance blades, DRAM power management, full system simulation, high performance computing, hypervisors, and the Linux operating system. Before coming to IBM, he worked for four years at Lucent Technologies Bell Laboratories on the Plan 9 and Inferno operating systems.

    His current research focuses on exploring new operating system and distributed system techniques for systems with hundreds of thousands to millions of cores.

    Eric received a B.S. in Computer Science from the Rochester Institute of Technology in 1996 and has attended graduate courses in Computer Science at Stanford.

Leave a private comment to organizers about this proposal