diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-11 13:01:41 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-11 13:01:41 -0400 |
| commit | 3296ca27f50ecbd71db1d808c7a72d311027f919 (patch) | |
| tree | 833eaa58b2013bda86d4bd95faf6efad7a2d5ca4 /kernel/ptrace.c | |
| parent | e893123c7378192c094747dadec326b7c000c190 (diff) | |
| parent | 73fbad283cfbbcf02939bdbda31fc4a30e729cca (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (44 commits)
nommu: Provide mmap_min_addr definition.
TOMOYO: Add description of lists and structures.
TOMOYO: Remove unused field.
integrity: ima audit dentry_open failure
TOMOYO: Remove unused parameter.
security: use mmap_min_addr indepedently of security models
TOMOYO: Simplify policy reader.
TOMOYO: Remove redundant markers.
SELinux: define audit permissions for audit tree netlink messages
TOMOYO: Remove unused mutex.
tomoyo: avoid get+put of task_struct
smack: Remove redundant initialization.
integrity: nfsd imbalance bug fix
rootplug: Remove redundant initialization.
smack: do not beyond ARRAY_SIZE of data
integrity: move ima_counts_get
integrity: path_check update
IMA: Add __init notation to ima functions
IMA: Minimal IMA policy and boot param for TCB IMA policy
selinux: remove obsolete read buffer limit from sel_read_bool
...
Diffstat (limited to 'kernel/ptrace.c')
| -rw-r--r-- | kernel/ptrace.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/kernel/ptrace.c b/kernel/ptrace.c index 2442d140bd9..f6d8b8cb5e3 100644 --- a/kernel/ptrace.c +++ b/kernel/ptrace.c | |||
| @@ -175,10 +175,11 @@ int ptrace_attach(struct task_struct *task) | |||
| 175 | if (same_thread_group(task, current)) | 175 | if (same_thread_group(task, current)) |
| 176 | goto out; | 176 | goto out; |
| 177 | 177 | ||
| 178 | /* Protect exec's credential calculations against our interference; | 178 | /* Protect the target's credential calculations against our |
| 179 | * SUID, SGID and LSM creds get determined differently under ptrace. | 179 | * interference; SUID, SGID and LSM creds get determined differently |
| 180 | * under ptrace. | ||
| 180 | */ | 181 | */ |
| 181 | retval = mutex_lock_interruptible(&task->cred_exec_mutex); | 182 | retval = mutex_lock_interruptible(&task->cred_guard_mutex); |
| 182 | if (retval < 0) | 183 | if (retval < 0) |
| 183 | goto out; | 184 | goto out; |
| 184 | 185 | ||
| @@ -222,7 +223,7 @@ repeat: | |||
| 222 | bad: | 223 | bad: |
| 223 | write_unlock_irqrestore(&tasklist_lock, flags); | 224 | write_unlock_irqrestore(&tasklist_lock, flags); |
| 224 | task_unlock(task); | 225 | task_unlock(task); |
| 225 | mutex_unlock(&task->cred_exec_mutex); | 226 | mutex_unlock(&task->cred_guard_mutex); |
| 226 | out: | 227 | out: |
| 227 | return retval; | 228 | return retval; |
| 228 | } | 229 | } |
