CRED: Fix kernel panic upon security_file_alloc() failure.
commit1c0cd1eb0fff83be95a3fcec991ba4f1b09ff18b
authorTetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Fri, 4 Feb 2011 18:13:24 +0000 (4 18:13 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 2 Mar 2011 14:46:38 +0000 (2 09:46 -0500)
tree834a54141b8271b86ba5dafb0c879190702ec555
parent58ce8fabb2491dc60d03713ed12863affcdb1e73
CRED: Fix kernel panic upon security_file_alloc() failure.

commit 78d2978874e4e10e97dfd4fd79db45bdc0748550 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/file_table.c