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(-)

diff -puN include/linux/sched.h~locking-use-commentary include/linux/sched.h
--- linux-2.6.11/include/linux/sched.h~locking-use-commentary   2005-03-12 
19:06:25.000000000 +0100
+++ linux-2.6.11-paolo/include/linux/sched.h    2005-03-12 19:06:25.000000000 
+0100
@@ -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 */
diff -puN fs/exec.c~locking-use-commentary fs/exec.c
--- linux-2.6.11/fs/exec.c~locking-use-commentary       2005-03-12 
19:06:25.000000000 +0100
+++ linux-2.6.11-paolo/fs/exec.c        2005-03-12 19:06:25.000000000 +0100
@@ -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;
_
-
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/

Reply via email to