Neil Horman wrote: > > +static int proc_pid_limits(struct task_struct *task, char *buffer) > +{ > + unsigned int i; > + int count = 0; > + char *bufptr = buffer; > + > + struct rlimit rlim[RLIM_NLIMITS]; > + > + read_lock(&tasklist_lock); > + memcpy(rlim, task->signal->rlim, sizeof(struct rlimit) * RLIM_NLIMITS); > + read_unlock(&tasklist_lock);
Please don't re-introduce tasklist_lock unless strictly needed. And in this case it doesn't help, sys_getrlimit() changes ->rlim[] under task_lock(). Hovewer, I think the whole patch is not right. The "tsk" itself is pinned, but its ->signal is not stable and can be == NULL. You can use lock_task_sighand() to access ->signal. Oleg. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/