Commit 8e93583d authored by Andrei Vagin's avatar Andrei Vagin Committed by Pavel Emelyanov

criu: user raw syscalls for sched_getscheduler and sched_getparam

They are not implemented in musl-libc (alpine).

travis-ci: success for A few fixes for Alpine Linux
Signed-off-by: 's avatarAndrei Vagin <avagin@virtuozzo.com>
Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
parent b4e27682
......@@ -129,7 +129,11 @@ static int dump_sched_info(int pid, ThreadCoreEntry *tc)
BUILD_BUG_ON(SCHED_OTHER != 0); /* default in proto message */
ret = sched_getscheduler(pid);
/*
* In musl-libc sched_getscheduler and sched_getparam don't call
* syscalls and instead the always return -ENOSYS
*/
ret = syscall(__NR_sched_getscheduler, pid);
if (ret < 0) {
pr_perror("Can't get sched policy for %d", pid);
return -1;
......@@ -140,7 +144,7 @@ static int dump_sched_info(int pid, ThreadCoreEntry *tc)
tc->sched_policy = ret;
if ((ret == SCHED_RR) || (ret == SCHED_FIFO)) {
ret = sched_getparam(pid, &sp);
ret = syscall(__NR_sched_getparam, pid, &sp);
if (ret < 0) {
pr_perror("Can't get sched param for %d", pid);
return -1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment