41 lines
1.4 KiB
Diff
41 lines
1.4 KiB
Diff
From f268a97669b2871735fb0a2bb9cda275bf8c204f Mon Sep 17 00:00:00 2001
|
|
From: tangbinzy <tangbin_yewu@cmss.chinamobile.com>
|
|
Date: Thu, 24 Nov 2022 02:45:01 +0000
|
|
Subject: [PATCH 13/23] vircgroupv2devices: fix counting entries in BPF map
|
|
BPF syscall BPF_MAP_GET_NEXT_KEY returns -1 if something fails but it will
|
|
also return -1 if trying to get next key using the last key in the map with
|
|
errno set to ENOENT.
|
|
|
|
If there are VMs running and libvirtd is restarted and user tries to
|
|
call some cgroup devices operation on a VM we need to get the count of
|
|
entries in BPF map and it fails which will result in error when trying
|
|
to attach/detech devices.
|
|
|
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1833321
|
|
|
|
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
|
|
Reviewed-by: Erik Skultety <eskultet@redhat.com>
|
|
|
|
Signed-off-by: tangbin <tangbin_yewu@cmss.chinamobile.com>
|
|
(cherry-pick from 7e574d1a079bd13aeeedb7024cc45f85b1843fcc)
|
|
---
|
|
src/util/vircgroupv2devices.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/util/vircgroupv2devices.c b/src/util/vircgroupv2devices.c
|
|
index d62ee12a05..234e0f2278 100644
|
|
--- a/src/util/vircgroupv2devices.c
|
|
+++ b/src/util/vircgroupv2devices.c
|
|
@@ -342,7 +342,7 @@ virCgroupV2DevicesCountMapEntries(int mapfd)
|
|
prevKey = key;
|
|
}
|
|
|
|
- if (rc < 0)
|
|
+ if (rc < 0 && errno != ENOENT)
|
|
return -1;
|
|
|
|
return ret;
|
|
--
|
|
2.27.0
|
|
|