aboutsummaryrefslogtreecommitdiff
path: root/fs/ext4/resize.c
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@redhat.com>2008-04-29 22:02:02 -0400
committerTheodore Ts'o <tytso@mit.edu>2008-04-29 22:02:02 -0400
commit216553c4b7f3e3e2beb4981cddca9b2027523928 (patch)
treeaefd413c05b078c6e8cf702956c79548943b5023 /fs/ext4/resize.c
parent2887df139c40512cdc147d1a84d95d4f3d261bd1 (diff)
ext4: fix wrong gfp type under transaction
This fixes the allocations with GFP_KERNEL while under a transaction problems in ext4. This patch is the same as its ext3 counterpart, just switches these to GFP_NOFS. Signed-off-by: Josef Bacik <jbacik@redhat.com> Cc: <linux-ext4@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mingming Cao <cmm@us.ibm.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/resize.c')
-rw-r--r--fs/ext4/resize.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c
index 3e0f5d06f3e..0ca63dcbdf8 100644
--- a/fs/ext4/resize.c
+++ b/fs/ext4/resize.c
@@ -469,7 +469,7 @@ static int add_new_gdb(handle_t *handle, struct inode *inode,
goto exit_dindj;
n_group_desc = kmalloc((gdb_num + 1) * sizeof(struct buffer_head *),
- GFP_KERNEL);
+ GFP_NOFS);
if (!n_group_desc) {
err = -ENOMEM;
ext4_warning(sb, __func__,
@@ -552,7 +552,7 @@ static int reserve_backup_gdb(handle_t *handle, struct inode *inode,
int res, i;
int err;
- primary = kmalloc(reserved_gdb * sizeof(*primary), GFP_KERNEL);
+ primary = kmalloc(reserved_gdb * sizeof(*primary), GFP_NOFS);
if (!primary)
return -ENOMEM;