comments on locking of task->comm
Subsystems (3)
PATCH 1/1 comments on locking of task->comm
From: Paolo 'Blaisorblade' Giarrusso <[email protected]>
Add some comments about task->comm, to explain what it is near its definition and provide some important pointers to its uses.
Signed-off-by Paolo 'Blaisorblade' Giarrusso <[email protected]>
---
linux-2.6.11-paolo/fs/exec.c | 4 +++- linux-2.6.11-paolo/include/linux/sched.h | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-)
include/linux/sched.h renamed from include/linux/sched.h~locking-use-commentary +5 -2
@@ -532,7 +532,7 @@ struct task_struct {unsigned long flags;/* per process flags, defined below */ unsigned long ptrace; -int lock_depth;/* Lock depth */ +int lock_depth;/* BKL lock depth */ int prio, static_prio;struct list_head run_list;
@@ -615,7 +615,10 @@ struct task_struct {struct key *thread_keyring;/* keyring private to this thread */ #endif int oomkilladj;/* OOM kill score adjustment (bit shift). */ -char comm[TASK_COMM_LEN ]; +char comm[TASK_COMM_LEN ];/* executable name excluding path +- access with [gs]et_task_comm (which lock +it with task_lock()) +- initialized normally by flush_old_exec */ /* file system info */ int link_count, total_link_count;/* ipc stuff */
fs/exec.c renamed from fs/exec.c~locking-use-commentary +3 -1
@@ -867,9 +867,11 @@ int flush_old_exec(struct linux_binprm *if (current->euid == current->uid && current->egid == current->gid) current->mm->dumpable =1 ; name = bprm->filename; + +/* Copies the binary name from after last slash */ for (i=0 ; (ch = *(name++)) !='\0' ;) {if (ch =='/' ) - i =0 ; + i =0 ;/* overwrite what we wrote */ else if (i < (sizeof (tcomm) -1 )) tcomm[i++] = ch;
_