diff options
author | Jan Kara <jack@suse.cz> | 2013-10-31 20:37:15 +0100 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2013-10-31 20:37:15 +0100 |
commit | 1ce0aa802c4cbe6dfe2c7fa95c839d75a509c9a5 (patch) | |
tree | 9206fb8d2dc95f9f826c4a169a90292cbca875cb /fs/jbd | |
parent | 444996027e80f96c9948d8d5b8f067a8aff9861d (diff) | |
download | lwn-1ce0aa802c4cbe6dfe2c7fa95c839d75a509c9a5.tar.gz lwn-1ce0aa802c4cbe6dfe2c7fa95c839d75a509c9a5.zip |
jbd: Revert "jbd: remove dependency on __GFP_NOFAIL"
This reverts commit 05713082ab7690a2b22b044cfc867f346c39cd2d. The idea
to remove __GFP_NOFAIL was opposed by Andrew Morton. Although mm guys do
want to get rid of __GFP_NOFAIL users, opencoding the allocation retry
is even worse.
See emails following
http://www.gossamer-threads.com/lists/linux/kernel/1809153#1809153
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/jbd')
-rw-r--r-- | fs/jbd/transaction.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/jbd/transaction.c b/fs/jbd/transaction.c index be0c39b66fe0..aa603e017d22 100644 --- a/fs/jbd/transaction.c +++ b/fs/jbd/transaction.c @@ -26,7 +26,6 @@ #include <linux/mm.h> #include <linux/highmem.h> #include <linux/hrtimer.h> -#include <linux/backing-dev.h> static void __journal_temp_unlink_buffer(struct journal_head *jh); @@ -100,10 +99,11 @@ static int start_this_handle(journal_t *journal, handle_t *handle) alloc_transaction: if (!journal->j_running_transaction) { - new_transaction = kzalloc(sizeof(*new_transaction), GFP_NOFS); + new_transaction = kzalloc(sizeof(*new_transaction), + GFP_NOFS|__GFP_NOFAIL); if (!new_transaction) { - congestion_wait(BLK_RW_ASYNC, HZ/50); - goto alloc_transaction; + ret = -ENOMEM; + goto out; } } |