From 84adb871057cc4999c51e1b94217f3863dafe77a Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Wed, 28 Sep 2022 09:47:37 +0200 Subject: [PATCH] qemuNamespaceMknodPaths: Don't fork needlessly MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The qemuNamespaceMknodPaths() function is responsible for creating files/directories in QEMU's mount namespace. When called, it is given list of paths that have to be created in the namespace. It processes this list and removes items that are not directly under /dev, but on a 'shared' filesystem (note that all other mount points are preserved). And it may so happen that after this pre-process no files/directories need to be created in the namespace. If that's the case, exit early and avoid fork()-ing only to find out the same. Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko --- src/qemu/qemu_namespace.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/qemu/qemu_namespace.c b/src/qemu/qemu_namespace.c index 09e235e120..a2c31310d9 100644 --- a/src/qemu/qemu_namespace.c +++ b/src/qemu/qemu_namespace.c @@ -1293,6 +1293,9 @@ qemuNamespaceMknodPaths(virDomainObj *vm, goto cleanup; } + if (data.nitems == 0) + return 0; + for (i = 0; i < data.nitems; i++) { qemuNamespaceMknodItem *item = &data.items[i]; if (item->target && -- 2.47.2