ext4: only check dquot_initialize_needed() when debugging
authorTheodore Ts'o <tytso@mit.edu>
Thu, 8 Jun 2023 14:06:40 +0000 (10:06 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Jun 2023 09:15:33 +0000 (11:15 +0200)
commit5b2438f0a7e58acc1e47941cec4b353770e7488e
treedc3e541fc253ce79de6602b08fb711573ab1b6b3
parent77eed67ba24ea194cf8d2ec0168a23155b07d78b
ext4: only check dquot_initialize_needed() when debugging

commit dea9d8f7643fab07bf89a1155f1f94f37d096a5e upstream.

ext4_xattr_block_set() relies on its caller to call dquot_initialize()
on the inode.  To assure that this has happened there are WARN_ON
checks.  Unfortunately, this is subject to false positives if there is
an antagonist thread which is flipping the file system at high rates
between r/o and rw.  So only do the check if EXT4_XATTR_DEBUG is
enabled.

Link: https://lore.kernel.org/r/20230608044056.GA1418535@mit.edu
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/ext4/xattr.c