This changes __pidfd_fget to use the new exec_update_mutex instead of cred_guard_mutex.
This should be safe, as the credentials do not change before exec_update_mutex is locked. Therefore whatever file access is possible with holding the cred_guard_mutex here is also possbile with the exec_update_mutex.
Signed-off-by: Bernd Edlinger bernd.edlinger@hotmail.de --- kernel/pid.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/pid.c b/kernel/pid.c index 0f4ecb5..04821f4 100644 --- a/kernel/pid.c +++ b/kernel/pid.c @@ -584,7 +584,7 @@ static struct file *__pidfd_fget(struct task_struct *task, int fd) struct file *file; int ret;
- ret = mutex_lock_killable(&task->signal->cred_guard_mutex); + ret = mutex_lock_killable(&task->signal->exec_update_mutex); if (ret) return ERR_PTR(ret);
@@ -593,7 +593,7 @@ static struct file *__pidfd_fget(struct task_struct *task, int fd) else file = ERR_PTR(-EPERM);
- mutex_unlock(&task->signal->cred_guard_mutex); + mutex_unlock(&task->signal->exec_update_mutex);
return file ?: ERR_PTR(-EBADF); }
On Sat, Mar 21, 2020 at 02:46:16AM +0000, Bernd Edlinger wrote:
This changes __pidfd_fget to use the new exec_update_mutex instead of cred_guard_mutex.
This should be safe, as the credentials do not change before exec_update_mutex is locked. Therefore whatever file access is possible with holding the cred_guard_mutex here is also possbile with the exec_update_mutex.
Signed-off-by: Bernd Edlinger bernd.edlinger@hotmail.de
Reviewed-by: Christian Brauner christian.brauner@ubuntu.com
linux-stable-mirror@lists.linaro.org