On Thu 15-12-16 15:07:15, Michal Hocko wrote: > From: Michal Hocko <mhocko@xxxxxxxx> > > This reverts commit 216553c4b7f3e3e2beb4981cddca9b2027523928. Now that > the transaction context uses memalloc_nofs_save and all allocations > within the this context inherit GFP_NOFS automatically, there is no > reason to mark specific allocations explicitly. > > This patch should not introduce any functional change. The main point > of this change is to reduce explicit GFP_NOFS usage inside ext4 code > to make the review of the remaining usage easier. > > Signed-off-by: Michal Hocko <mhocko@xxxxxxxx> Looks good to me. You can add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > fs/ext4/acl.c | 6 +++--- > fs/ext4/extents.c | 2 +- > fs/ext4/resize.c | 4 ++-- > fs/ext4/xattr.c | 4 ++-- > 4 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/fs/ext4/acl.c b/fs/ext4/acl.c > index fd389935ecd1..9e98092c2a4b 100644 > --- a/fs/ext4/acl.c > +++ b/fs/ext4/acl.c > @@ -32,7 +32,7 @@ ext4_acl_from_disk(const void *value, size_t size) > return ERR_PTR(-EINVAL); > if (count == 0) > return NULL; > - acl = posix_acl_alloc(count, GFP_NOFS); > + acl = posix_acl_alloc(count, GFP_KERNEL); > if (!acl) > return ERR_PTR(-ENOMEM); > for (n = 0; n < count; n++) { > @@ -94,7 +94,7 @@ ext4_acl_to_disk(const struct posix_acl *acl, size_t *size) > > *size = ext4_acl_size(acl->a_count); > ext_acl = kmalloc(sizeof(ext4_acl_header) + acl->a_count * > - sizeof(ext4_acl_entry), GFP_NOFS); > + sizeof(ext4_acl_entry), GFP_KERNEL); > if (!ext_acl) > return ERR_PTR(-ENOMEM); > ext_acl->a_version = cpu_to_le32(EXT4_ACL_VERSION); > @@ -159,7 +159,7 @@ ext4_get_acl(struct inode *inode, int type) > } > retval = ext4_xattr_get(inode, name_index, "", NULL, 0); > if (retval > 0) { > - value = kmalloc(retval, GFP_NOFS); > + value = kmalloc(retval, GFP_KERNEL); > if (!value) > return ERR_PTR(-ENOMEM); > retval = ext4_xattr_get(inode, name_index, "", value, retval); > diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c > index ef815eb72389..c901d89f0038 100644 > --- a/fs/ext4/extents.c > +++ b/fs/ext4/extents.c > @@ -2933,7 +2933,7 @@ int ext4_ext_remove_space(struct inode *inode, ext4_lblk_t start, > le16_to_cpu(path[k].p_hdr->eh_entries)+1; > } else { > path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 1), > - GFP_NOFS); > + GFP_KERNEL); > if (path == NULL) { > ext4_journal_stop(handle); > return -ENOMEM; > diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c > index cf681004b196..e121f4e048b8 100644 > --- a/fs/ext4/resize.c > +++ b/fs/ext4/resize.c > @@ -816,7 +816,7 @@ static int add_new_gdb(handle_t *handle, struct inode *inode, > > n_group_desc = ext4_kvmalloc((gdb_num + 1) * > sizeof(struct buffer_head *), > - GFP_NOFS); > + GFP_KERNEL); > if (!n_group_desc) { > err = -ENOMEM; > ext4_warning(sb, "not enough memory for %lu groups", > @@ -943,7 +943,7 @@ static int reserve_backup_gdb(handle_t *handle, struct inode *inode, > int res, i; > int err; > > - primary = kmalloc(reserved_gdb * sizeof(*primary), GFP_NOFS); > + primary = kmalloc(reserved_gdb * sizeof(*primary), GFP_KERNEL); > if (!primary) > return -ENOMEM; > > diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c > index 5a94fa52b74f..172317462238 100644 > --- a/fs/ext4/xattr.c > +++ b/fs/ext4/xattr.c > @@ -875,7 +875,7 @@ ext4_xattr_block_set(handle_t *handle, struct inode *inode, > > unlock_buffer(bs->bh); > ea_bdebug(bs->bh, "cloning"); > - s->base = kmalloc(bs->bh->b_size, GFP_NOFS); > + s->base = kmalloc(bs->bh->b_size, GFP_KERNEL); > error = -ENOMEM; > if (s->base == NULL) > goto cleanup; > @@ -887,7 +887,7 @@ ext4_xattr_block_set(handle_t *handle, struct inode *inode, > } > } else { > /* Allocate a buffer where we construct the new block. */ > - s->base = kzalloc(sb->s_blocksize, GFP_NOFS); > + s->base = kzalloc(sb->s_blocksize, GFP_KERNEL); > /* assert(header == s->base) */ > error = -ENOMEM; > if (s->base == NULL) > -- > 2.10.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html