mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
Introduce the function virCgroupForEmulator
Introduce the function virCgroupForEmulator() to create sub directory for simulator thread(include I/O thread, vhost-net thread) Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> Signed-off-by: Tang Chen <tangchen@cn.fujitsu.com> Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
This commit is contained in:
parent
c18dc28b1f
commit
92741ef3ee
@ -71,6 +71,7 @@ virCgroupDenyDeviceMajor;
|
|||||||
virCgroupDenyDevicePath;
|
virCgroupDenyDevicePath;
|
||||||
virCgroupForDomain;
|
virCgroupForDomain;
|
||||||
virCgroupForDriver;
|
virCgroupForDriver;
|
||||||
|
virCgroupForEmulator;
|
||||||
virCgroupForVcpu;
|
virCgroupForVcpu;
|
||||||
virCgroupFree;
|
virCgroupFree;
|
||||||
virCgroupGetBlkioWeight;
|
virCgroupGetBlkioWeight;
|
||||||
|
@ -956,6 +956,48 @@ int virCgroupForVcpu(virCgroupPtr driver ATTRIBUTE_UNUSED,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* virCgroupForEmulator:
|
||||||
|
*
|
||||||
|
* @driver: group for the domain
|
||||||
|
* @group: Pointer to returned virCgroupPtr
|
||||||
|
*
|
||||||
|
* Returns: 0 on success or -errno on failure
|
||||||
|
*/
|
||||||
|
#if defined HAVE_MNTENT_H && defined HAVE_GETMNTENT_R
|
||||||
|
int virCgroupForEmulator(virCgroupPtr driver,
|
||||||
|
virCgroupPtr *group,
|
||||||
|
int create)
|
||||||
|
{
|
||||||
|
int rc;
|
||||||
|
char *path;
|
||||||
|
|
||||||
|
if (driver == NULL)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
|
if (virAsprintf(&path, "%s/emulator", driver->path) < 0)
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
|
rc = virCgroupNew(path, group);
|
||||||
|
VIR_FREE(path);
|
||||||
|
|
||||||
|
if (rc == 0) {
|
||||||
|
rc = virCgroupMakeGroup(driver, *group, create, VIR_CGROUP_VCPU);
|
||||||
|
if (rc != 0)
|
||||||
|
virCgroupFree(group);
|
||||||
|
}
|
||||||
|
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int virCgroupForEmulator(virCgroupPtr driver ATTRIBUTE_UNUSED,
|
||||||
|
virCgroupPtr *group ATTRIBUTE_UNUSED,
|
||||||
|
int create ATTRIBUTE_UNUSED)
|
||||||
|
{
|
||||||
|
return -ENXIO;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
/**
|
/**
|
||||||
* virCgroupSetBlkioWeight:
|
* virCgroupSetBlkioWeight:
|
||||||
*
|
*
|
||||||
|
@ -59,6 +59,10 @@ int virCgroupForVcpu(virCgroupPtr driver,
|
|||||||
virCgroupPtr *group,
|
virCgroupPtr *group,
|
||||||
int create);
|
int create);
|
||||||
|
|
||||||
|
int virCgroupForEmulator(virCgroupPtr driver,
|
||||||
|
virCgroupPtr *group,
|
||||||
|
int create);
|
||||||
|
|
||||||
int virCgroupPathOfController(virCgroupPtr group,
|
int virCgroupPathOfController(virCgroupPtr group,
|
||||||
int controller,
|
int controller,
|
||||||
const char *key,
|
const char *key,
|
||||||
|
Loading…
Reference in New Issue
Block a user