• Peter Zijlstra's avatar
    sched: fix bandwidth validation for UID grouping · 98a4826b
    Peter Zijlstra authored
    Impact: make rt-limit tunables work again
    
    Mark Glines reported:
    
    > I've got an issue on x86-64 where I can't configure the system to allow
    > RT tasks for a non-root user.
    >
    > In 2.6.26.5, I was able to do the following to set things up nicely:
    > echo 450000 >/sys/kernel/uids/0/cpu_rt_runtime
    > echo 450000 >/sys/kernel/uids/1000/cpu_rt_runtime
    >
    > Seems like every value I try to echo into the /sys files returns EINVAL.
    
    For UID grouping we initialize the root group with infinite bandwidth
    which by default is actually more than the global limit, therefore the
    bandwidth check always fails.
    
    Because the root group is a phantom group (for UID grouping) we cannot
    runtime adjust it, therefore we let it reflect the global bandwidth
    settings.
    Reported-by: default avatarMark Glines <mark@glines.org>
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    98a4826b
sched.c 232 KB