diff options
author | Darrick J. Wong <darrick.wong@oracle.com> | 2019-10-23 17:48:49 -0700 |
---|---|---|
committer | Darrick J. Wong <darrick.wong@oracle.com> | 2019-10-24 22:09:24 -0700 |
commit | f3fe4abb2d68200d839f8a4462d67c685fa04ac5 (patch) | |
tree | b1137518266ba2e481d17e38f7547e60c538cb57 | |
parent | 7d194c2100ad2a6dded545887d02754948ca5241 (diff) |
xfs: don't recurse into memory reclaim when allocating attr value bufferxfs-5.4-fixes_2019-10-24
If we're going to allocate buffers for attr values while holding the
ilock, we cannot allow recursion into fs reclaim because reclaim try to
kick off writeback against the inode we have ilocked, which could lead
to a deadlock.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
-rw-r--r-- | fs/xfs/libxfs/xfs_attr_leaf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/libxfs/xfs_attr_leaf.c b/fs/xfs/libxfs/xfs_attr_leaf.c index f0089e862216..ec7921e07f69 100644 --- a/fs/xfs/libxfs/xfs_attr_leaf.c +++ b/fs/xfs/libxfs/xfs_attr_leaf.c @@ -416,7 +416,7 @@ xfs_attr_copy_value( } if (args->op_flags & XFS_DA_OP_ALLOCVAL) { - args->value = kmem_alloc_large(valuelen, 0); + args->value = kmem_alloc_large(valuelen, KM_NOFS); if (!args->value) return -ENOMEM; } |