4.9-stable review patch.  If anyone has any objections, please let me know.

------------------


From: "Darrick J. Wong" <darrick.w...@oracle.com>

commit b24a978c377be5f14e798cb41238e66fe51aab2f upstream.

Use NOFS for allocating btree cursors, since they can be called
under the ilock.

Signed-off-by: Darrick J. Wong <darrick.w...@oracle.com>
Reviewed-by: Dave Chinner <dchin...@redhat.com>
Signed-off-by: Dave Chinner <da...@fromorbit.com>
Cc: Christoph Hellwig <h...@lst.de>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 fs/xfs/libxfs/xfs_alloc_btree.c  |    2 +-
 fs/xfs/libxfs/xfs_bmap_btree.c   |    2 +-
 fs/xfs/libxfs/xfs_ialloc_btree.c |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

--- a/fs/xfs/libxfs/xfs_alloc_btree.c
+++ b/fs/xfs/libxfs/xfs_alloc_btree.c
@@ -421,7 +421,7 @@ xfs_allocbt_init_cursor(
 
        ASSERT(btnum == XFS_BTNUM_BNO || btnum == XFS_BTNUM_CNT);
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP);
+       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
 
        cur->bc_tp = tp;
        cur->bc_mp = mp;
--- a/fs/xfs/libxfs/xfs_bmap_btree.c
+++ b/fs/xfs/libxfs/xfs_bmap_btree.c
@@ -796,7 +796,7 @@ xfs_bmbt_init_cursor(
        struct xfs_btree_cur    *cur;
        ASSERT(whichfork != XFS_COW_FORK);
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP);
+       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
 
        cur->bc_tp = tp;
        cur->bc_mp = mp;
--- a/fs/xfs/libxfs/xfs_ialloc_btree.c
+++ b/fs/xfs/libxfs/xfs_ialloc_btree.c
@@ -357,7 +357,7 @@ xfs_inobt_init_cursor(
        struct xfs_agi          *agi = XFS_BUF_TO_AGI(agbp);
        struct xfs_btree_cur    *cur;
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_SLEEP);
+       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
 
        cur->bc_tp = tp;
        cur->bc_mp = mp;


Reply via email to