On Thu, Sep 23, 2010 at 12:51:46PM +1000, Neil Brown wrote: > On Wed, 22 Sep 2010 22:33:15 -0400 > "J. Bruce Fields" <bfields@xxxxxxxxxxxx> wrote: > sched.h says: > > char comm[TASK_COMM_LEN]; /* executable name excluding path > - access with [gs]et_task_comm (which lock > it with task_lock()) > - initialized normally by setup_new_exec */ > > So we should lock... > > But then fs/exec.c says: > void set_task_comm(struct task_struct *tsk, char *buf) > { > task_lock(tsk); > > /* > * Threads may access current->comm without holding > * the task lock, so write the string carefully. > * Readers without a lock may see incomplete new > * names but are safe from non-terminating string reads. > */ > ..... > > So I guess we are safe to use it unlocked for informational purposes. > That first comment could do with an update, and where-ever it was that I > copied that code from can probably be simplified too..... Sounds good. I've added a quick modular build to my test scripts too, so hopefully that sort of problem won't slip past me next time.... --b. -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html