Messages in this thread | | | Date | Mon, 09 Nov 2009 18:15:27 +0100 | From | Jiri Slaby <> | Subject | Re: [PATCH 0/3] extend get/setrlimit to support setting rlimits external to a process (v7) |
| |
On 11/09/2009 05:40 PM, Oleg Nesterov wrote: > Also, I don't understand why wthis code get's both pid and task_struct().
And what do you suggest? I, with my knowledge and after fast investigation, see no other option.
> And the "if (resource >= RLIM_NLIMITS)" check is racy afaics, see > http://marc.info/?l=linux-kernel&m=125200862124872
Your patch (which I have in my series btw) is likely needed for the setprlimit syscall, having this on my mind again from now on. But the 'if' above is a different story. 'resource' is an index here.
And as a bonus, what I found out now is that /proc/*/limits (proc_info_read->proc_pid_limits) doesn't necessarily reflect current limits. Since task_lock(current->group_leader) is not held, values of one limit may be from the old as well as the currently updated one.
Am I right and do we care at all (since it's not atomic anyway in the sense of reading 2 small chunks from that file)?
Thanks for the input.
| |