fs: take i_mutex during prepare_binprm for set[ug]id executables
authorJann Horn <jann@thejh.net>
Sun, 19 Apr 2015 00:48:39 +0000 (02:48 +0200)
committerSasha Levin <sasha.levin@oracle.com>
Sun, 17 May 2015 23:12:32 +0000 (19:12 -0400)
commit7f1a6ae73b5c2d24b21d9a27928ceacef3a9a939
tree7440e34e001cb97ead071e2072aefdc3da2f45ca
parentc42f3e154ec94d298480397cc82613d26b712449
fs: take i_mutex during prepare_binprm for set[ug]id executables

[ Upstream commit 8b01fc86b9f425899f8a3a8fc1c47d73c2c20543 ]

This prevents a race between chown() and execve(), where chowning a
setuid-user binary to root would momentarily make the binary setuid
root.

This patch was mostly written by Linus Torvalds.

Signed-off-by: Jann Horn <jann@thejh.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
fs/exec.c