vircgroup: introduce virCgroupV2DevicesGetKey

Device rules are stored in BPF map that is a hash type, this function
will create a key based on major and minor id of device.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Pavel Hrdina 2019-06-24 14:46:53 +02:00
parent 63cfe7b84d
commit b18b0ce609
3 changed files with 13 additions and 0 deletions

View File

@ -1721,6 +1721,7 @@ virCgroupV2DevicesAttachProg;
virCgroupV2DevicesAvailable;
virCgroupV2DevicesCreateProg;
virCgroupV2DevicesDetectProg;
virCgroupV2DevicesGetKey;
virCgroupV2DevicesGetPerms;
virCgroupV2DevicesPrepareProg;
virCgroupV2DevicesRemoveProg;

View File

@ -647,3 +647,11 @@ virCgroupV2DevicesGetPerms(int perms G_GNUC_UNUSED,
return 0;
}
#endif /* !HAVE_DECL_BPF_CGROUP_DEVICE */
uint64_t
virCgroupV2DevicesGetKey(int major,
int minor)
{
return (uint64_t)major << 32 | ((uint64_t)minor & 0x00000000ffffffff);
}

View File

@ -45,3 +45,7 @@ virCgroupV2DevicesRemoveProg(virCgroupPtr group);
uint32_t
virCgroupV2DevicesGetPerms(int perms,
char type);
uint64_t
virCgroupV2DevicesGetKey(int major,
int minor);