ptrace: ptrace_attach: fix the usage of ->cred_exec_mutex
ptrace_attach() needs task->cred_exec_mutex, not current->cred_exec_mutex. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Roland McGrath <roland@redhat.com> Acked-by: David Howells <dhowells@redhat.com> Signed-off-by: James Morris <jmorris@namei.org>
This commit is contained in:
parent
ce8a7424d2
commit
cad81bc252
|
@ -188,7 +188,7 @@ int ptrace_attach(struct task_struct *task)
|
||||||
/* Protect exec's credential calculations against our interference;
|
/* Protect exec's credential calculations against our interference;
|
||||||
* SUID, SGID and LSM creds get determined differently under ptrace.
|
* SUID, SGID and LSM creds get determined differently under ptrace.
|
||||||
*/
|
*/
|
||||||
retval = mutex_lock_interruptible(¤t->cred_exec_mutex);
|
retval = mutex_lock_interruptible(&task->cred_exec_mutex);
|
||||||
if (retval < 0)
|
if (retval < 0)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
@ -232,7 +232,7 @@ repeat:
|
||||||
bad:
|
bad:
|
||||||
write_unlock_irqrestore(&tasklist_lock, flags);
|
write_unlock_irqrestore(&tasklist_lock, flags);
|
||||||
task_unlock(task);
|
task_unlock(task);
|
||||||
mutex_unlock(¤t->cred_exec_mutex);
|
mutex_unlock(&task->cred_exec_mutex);
|
||||||
out:
|
out:
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue