From: Pierrick Bouvier Date: Thu, 19 Mar 2026 20:59:41 +0000 (-0700) Subject: backends/iommufd: report error when /dev/iommu is not available X-Git-Tag: v11.0.0-rc1~5^2~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=45a0241365cedaa4b4b17213fe6a2ef15526505d;p=thirdparty%2Fqemu.git backends/iommufd: report error when /dev/iommu is not available In case current kernel does not support /dev/iommu, qemu will probably fail first because /sys/bus/pci/devices/*/vfio-dev/ is not present, since QEMU opens it before /dev/iommu. Instead, report an error directly when completing an iommufd object, to inform user that kernel does not support it, with a hint about missing CONFIG_IOMMUFD. We can't do this from initialize as there is no way to return an error, and we don't want to abort at this step. Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Cédric Le Goater Signed-off-by: Pierrick Bouvier Reviewed-by: Zhenzhong Duan Message-ID: <20260319205942.367705-2-pierrick.bouvier@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- diff --git a/backends/iommufd.c b/backends/iommufd.c index acfab907c03..e1fee16acf2 100644 --- a/backends/iommufd.c +++ b/backends/iommufd.c @@ -82,6 +82,9 @@ static void iommufd_backend_complete(UserCreatable *uc, Error **errp) } else { cpr_save_fd(name, 0, be->fd); } + } else if (!g_file_test("/dev/iommu", G_FILE_TEST_EXISTS)) { + error_setg(errp, "/dev/iommu does not exist" + " (is your kernel config missing CONFIG_IOMMUFD?)"); } }