autogroup: sched_setscheduler() fails

From: Bharata B Rao
Date: Mon Jan 10 2011 - 04:16:42 EST


Hi,

With autogroup ON, sched_setscheduler() fails when I try to change the
scheduling policy of a normal task to either RR or FIFO.

sched_setscheduler() returns -EPERM when it finds that the group doesn't
have any rt bandwidth. This is expected because with autogroup, the task
is in an autogroup for which task_group(p)->rt_bandwidth.rt_runtime is 0.

I guess the task needs to be moved to appropriate cgroup (from its current
autogroup) when such policy change is requested, but I wasn't sure if
group change from sched_setscheduler() can be achieved easily.

Regards,
Bharata.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/