Christoph Hellwig wrote:
> On Fri, Feb 01, 2002 at 09:21:12AM -0800, Dave Hansen wrote:
>>Things like nfsd are always holding the BKL, only
>>releasing it on schedule(), and exit. Is there any compelling reason to
>>hold the BKL during times other than during the daemonize() process?
>
> In general there is no reason. If the data the thread accesses is not
> protected by anything but BKL it must hold it - else it seems superflous
> to me.
What do you think about the BKL hold during daemonize()? Can we expand
the use of the task lock to keep the BKL from being held?
/* these all use task_lock(): */
exit_mm(current);
exit_fs(current);
exit_files(current);
/* Is there more locking needed for this? */
current->session = 1;
current->pgrp = 1;
current->tty = NULL;
fs = init_task.fs;
current->fs = fs;
/* This is already safe: */
atomic_inc(&fs->count);
current->files = init_task.files;
atomic_inc(¤t->files->count);
-- Dave Hansen haveblue@us.ibm.com- 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/
This archive was generated by hypermail 2b29 : Thu Feb 07 2002 - 21:00:16 EST