exynos-linux-stable/security/smack
Eric Biggers 1e4c7ce0a9 smack: use GFP_NOFS while holding inode_smack::smk_lock
commit e5bfad3d7acc5702f32aafeb388362994f4d7bd0 upstream.

inode_smack::smk_lock is taken during smack_d_instantiate(), which is
called during a filesystem transaction when creating a file on ext4.
Therefore to avoid a deadlock, all code that takes this lock must use
GFP_NOFS, to prevent memory reclaim from waiting for the filesystem
transaction to complete.

Reported-by: syzbot+0eefc1e06a77d327a056@syzkaller.appspotmail.com
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-07 18:53:25 +02:00
..
Kconfig Smack: Signal delivery as an append operation 2016-09-08 13:22:56 -07:00
Makefile Smack: Repair netfilter dependency 2015-01-23 10:08:19 -08:00
smack.h Smack: Signal delivery as an append operation 2016-09-08 13:22:56 -07:00
smack_access.c smack: use GFP_NOFS while holding inode_smack::smk_lock 2019-10-07 18:53:25 +02:00
smack_lsm.c smack: use GFP_NOFS while holding inode_smack::smk_lock 2019-10-07 18:53:25 +02:00
smack_netfilter.c security: Use IS_ENABLED() instead of checking for built-in or module 2016-08-08 13:08:25 -04:00
smackfs.c Smack: Use memdup_user() rather than duplicating its implementation 2016-08-23 09:58:21 -07:00