aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2017-01-09 10:38:59 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-01-12 05:39:44 -0500
commitaa38f370b25acc478be36e237e882e78f71c67e5 (patch)
tree38da9850c443ba9531ea12986dbecc7021ee0b5c /fs
parent3c382dda47e4b51de6d67847ddfc9c10962c4ca3 (diff)
xfs: use GPF_NOFS when allocating btree cursors
commit b24a978c377be5f14e798cb41238e66fe51aab2f upstream. Use NOFS for allocating btree cursors, since they can be called under the ilock. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/libxfs/xfs_alloc_btree.c2
-rw-r--r--fs/xfs/libxfs/xfs_bmap_btree.c2
-rw-r--r--fs/xfs/libxfs/xfs_ialloc_btree.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/fs/xfs/libxfs/xfs_alloc_btree.c b/fs/xfs/libxfs/xfs_alloc_btree.c
index 5ba2dac5e67c..c06ec77a9418 100644
--- a/fs/xfs/libxfs/xfs_alloc_btree.c
+++ b/fs/xfs/libxfs/xfs_alloc_btree.c
@@ -421,7 +421,7 @@ xfs_allocbt_init_cursor(
421 421
422 ASSERT(btnum == XFS_BTNUM_BNO || btnum == XFS_BTNUM_CNT); 422 ASSERT(btnum == XFS_BTNUM_BNO || btnum == XFS_BTNUM_CNT);
423 423
424 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP); 424 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
425 425
426 cur->bc_tp = tp; 426 cur->bc_tp = tp;
427 cur->bc_mp = mp; 427 cur->bc_mp = mp;
diff --git a/fs/xfs/libxfs/xfs_bmap_btree.c b/fs/xfs/libxfs/xfs_bmap_btree.c
index 8007d2ba9aef..049fa597ae91 100644
--- a/fs/xfs/libxfs/xfs_bmap_btree.c
+++ b/fs/xfs/libxfs/xfs_bmap_btree.c
@@ -796,7 +796,7 @@ xfs_bmbt_init_cursor(
796 struct xfs_btree_cur *cur; 796 struct xfs_btree_cur *cur;
797 ASSERT(whichfork != XFS_COW_FORK); 797 ASSERT(whichfork != XFS_COW_FORK);
798 798
799 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP); 799 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
800 800
801 cur->bc_tp = tp; 801 cur->bc_tp = tp;
802 cur->bc_mp = mp; 802 cur->bc_mp = mp;
diff --git a/fs/xfs/libxfs/xfs_ialloc_btree.c b/fs/xfs/libxfs/xfs_ialloc_btree.c
index eab68ae2e011..6c6b95947e71 100644
--- a/fs/xfs/libxfs/xfs_ialloc_btree.c
+++ b/fs/xfs/libxfs/xfs_ialloc_btree.c
@@ -357,7 +357,7 @@ xfs_inobt_init_cursor(
357 struct xfs_agi *agi = XFS_BUF_TO_AGI(agbp); 357 struct xfs_agi *agi = XFS_BUF_TO_AGI(agbp);
358 struct xfs_btree_cur *cur; 358 struct xfs_btree_cur *cur;
359 359
360 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP); 360 cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
361 361
362 cur->bc_tp = tp; 362 cur->bc_tp = tp;
363 cur->bc_mp = mp; 363 cur->bc_mp = mp;