quota: Fix possible dq_flags corruption
authorAndrew Perepechko <andrew.perepechko@sun.com>
Mon, 12 Apr 2010 18:16:50 +0000 (22:16 +0400)
committerJan Kara <jack@suse.cz>
Mon, 12 Apr 2010 19:12:36 +0000 (21:12 +0200)
commit08261673cb6dc638c39f44d69b76fffb57b92a8b
tree752b396f409897a4357ca29bc2f9c3384d29e07d
parent4c5e6c0e70fd6ca2fa67184fd36a261b3b7b38d0
quota: Fix possible dq_flags corruption

dq_flags are modified non-atomically in do_set_dqblk via __set_bit calls and
atomically for example in mark_dquot_dirty or clear_dquot_dirty.  Hence a
change done by an atomic operation can be overwritten by a change done by a
non-atomic one. Fix the problem by using atomic bitops even in do_set_dqblk.

Signed-off-by: Andrew Perepechko <andrew.perepechko@sun.com>
Signed-off-by: Jan Kara <jack@suse.cz>
fs/quota/dquot.c