aboutsummaryrefslogtreecommitdiffstats
path: root/fs/jbd2/commit.c
diff options
context:
space:
mode:
authorJan Kara <[email protected]>2013-06-04 16:22:15 +0000
committerTheodore Ts'o <[email protected]>2013-06-04 16:22:15 +0000
commitfe1e8db598b259eafdffbe3dd5fe849cd2ad97d5 (patch)
treea5f7f35d95ab0737457f3ab6ea3a0234c3009df8 /fs/jbd2/commit.c
parentjbd2: cleanup needed free block estimates when starting a transaction (diff)
downloadkernel-fe1e8db598b259eafdffbe3dd5fe849cd2ad97d5.tar.gz
kernel-fe1e8db598b259eafdffbe3dd5fe849cd2ad97d5.zip
jbd2: fix race in t_outstanding_credits update in jbd2_journal_extend()
jbd2_journal_extend() first checked whether transaction can accept extending handle with more credits and then added credits to t_outstanding_credits. This can race with start_this_handle() adding another handle to a transaction and thus overbooking a transaction. Make jbd2_journal_extend() use atomic_add_return() to close the race. Reviewed-by: Zheng Liu <[email protected]> Signed-off-by: Jan Kara <[email protected]> Signed-off-by: "Theodore Ts'o" <[email protected]>
Diffstat (limited to 'fs/jbd2/commit.c')
0 files changed, 0 insertions, 0 deletions