Skip to content

ivshmem-plain cannot be used on non-Linux hosts

Goal

Allow use of basic ivshmem-plain devices on host OSes other than Linux, for example macOS.

Technical details

IVSHMEM support is currently requiring eventfds, a Linux-only kernel feature, which provides the doorbell interrupt functionality. Since in some cases ivshmem-plain without doorbell support would be enough, make it possible to build QEMU without eventfd support.

Additional information

I would like to propose this patch as-is on the mailing list (the trivial one?) as soon as I figure patch submission out fully:

https://github.com/fredldotme/qemu/commit/e929b8db8078aede6df7b02d8c0b71d1e2d6afcb

It's just #ifdefing out doorbell support on non-Linux builds which seems to be enough for basic functionality.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information