Messages in this thread | | | Date | Mon, 7 Oct 2002 17:37:26 -0400 | From | Daniel Jacobowitz <> | Subject | Re: Is this racy? |
| |
On Mon, Oct 07, 2002 at 02:51:52PM -0600, Michal Jaegermann wrote: > In fs/proc/array.c (2.4.20-pre9, 2.4.19 and likely many other > versions) in function 'proc_pid_stat()' there is a code like that: > > ...... > read_lock(&tasklist_lock); > ppid = task->pid ? task->p_opptr->pid : 0; > read_unlock(&tasklist_lock); > res = sprintf(buffer,"<long format string>", > task->pid, > ...... > ppid, > ...... > > So assignment to ppid is locked but other reads from fiels of 'task' > structure are not guarded that way. Is this ok or if not we do not > particularly care? Function 'task_state()' in the same file seems > to be more careful about this.
I think the lock is just so that p_opptr->pid doesn't change while we're looking at it.
-- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |