コード例 #1
0
ファイル: vircgroupmock.c プロジェクト: 6WIND/libvirt
static void init_sysfs(void)
{
    if (fakesysfsdir)
        return;

    if (!(fakesysfsdir = getenv("LIBVIRT_FAKE_SYSFS_DIR"))) {
        fprintf(stderr, "Missing LIBVIRT_FAKE_SYSFS_DIR env variable\n");
        abort();
    }

# define MAKE_CONTROLLER(subpath)                               \
    do {                                                        \
        char *path;                                             \
        if (asprintf(&path, "%s/%s", fakesysfsdir, subpath) < 0)\
            abort();                                            \
        if (make_controller(path, 0755) < 0) {                  \
            fprintf(stderr, "Cannot initialize %s\n", path);    \
            abort();                                            \
        }                                                       \
    } while (0)

    MAKE_CONTROLLER("cpu");
    MAKE_CONTROLLER("cpuacct");
    MAKE_CONTROLLER("cpu,cpuacct");
    MAKE_CONTROLLER("cpu,cpuacct/system");
    MAKE_CONTROLLER("cpuset");
    MAKE_CONTROLLER("blkio");
    MAKE_CONTROLLER("memory");
    MAKE_CONTROLLER("freezer");
}
コード例 #2
0
ファイル: vircgroupmock.c プロジェクト: aruiz/libvirt
static void init_sysfs(void)
{
    if (fakerootdir && fakesysfscgroupdir)
        return;

    if (!(fakerootdir = getenv("LIBVIRT_FAKE_ROOT_DIR"))) {
        fprintf(stderr, "Missing LIBVIRT_FAKE_ROOT_DIR env variable\n");
        abort();
    }

    if (virAsprintfQuiet(&fakesysfscgroupdir, "%s%s",
                         fakerootdir, SYSFS_CGROUP_PREFIX) < 0)
        abort();

    if (virFileMakePath(fakesysfscgroupdir) < 0) {
        fprintf(stderr, "Cannot create %s\n", fakesysfscgroupdir);
        abort();
    }

# define MAKE_CONTROLLER(subpath)                                      \
    do {                                                               \
        char *path;                                                    \
        if (asprintf(&path, "%s/%s", fakesysfscgroupdir, subpath) < 0) \
            abort();                                                   \
        if (make_controller(path, 0755) < 0) {                         \
            fprintf(stderr, "Cannot initialize %s\n", path);           \
            free(path);                                                \
            abort();                                                   \
        }                                                              \
        free(path);                                                    \
    } while (0)

    MAKE_CONTROLLER("cpu");
    MAKE_CONTROLLER("cpuacct");
    MAKE_CONTROLLER("cpu,cpuacct");
    MAKE_CONTROLLER("cpu,cpuacct/system");
    MAKE_CONTROLLER("cpuset");
    MAKE_CONTROLLER("blkio");
    MAKE_CONTROLLER("memory");
    MAKE_CONTROLLER("freezer");

    if (make_file(fakesysfscgroupdir,
                  SYSFS_CPU_PRESENT_MOCKED, "8-23,48-159\n") < 0)
        abort();
}