summaryrefslogtreecommitdiff
path: root/fs/jbd
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2013-10-31 20:37:15 +0100
committerJan Kara <jack@suse.cz>2013-10-31 20:37:15 +0100
commit1ce0aa802c4cbe6dfe2c7fa95c839d75a509c9a5 (patch)
tree9206fb8d2dc95f9f826c4a169a90292cbca875cb /fs/jbd
parent444996027e80f96c9948d8d5b8f067a8aff9861d (diff)
downloadlwn-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.c8
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;
}
}