CRED: Fix kernel panic upon security_file_alloc() failure.
authorTetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Fri, 4 Feb 2011 18:13:24 +0000 (18:13 +0000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 4 Feb 2011 18:40:29 +0000 (10:40 -0800)
commit78d2978874e4e10e97dfd4fd79db45bdc0748550
tree5a07ba8b01c52632638a1724a5dcbf6d0606da73
parentbb5b583b52794efc7b59f70a78be1b66a98dd939
CRED: Fix kernel panic upon security_file_alloc() failure.

In get_empty_filp() since 2.6.29, file_free(f) is called with f->f_cred == NULL
when security_file_alloc() returned an error.  As a result, kernel will panic()
due to put_cred(NULL) call within RCU callback.

Fix this bug by assigning f->f_cred before calling security_file_alloc().

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/file_table.c