fs: xfs: Remove KM_NOSLEEP and KM_SLEEP.
authorTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Mon, 26 Aug 2019 19:06:22 +0000 (12:06 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Mon, 26 Aug 2019 19:06:22 +0000 (12:06 -0700)
Since no caller is using KM_NOSLEEP and no callee branches on KM_SLEEP,
we can remove KM_NOSLEEP and replace KM_SLEEP with 0.

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
46 files changed:
fs/xfs/kmem.c
fs/xfs/kmem.h
fs/xfs/libxfs/xfs_alloc.c
fs/xfs/libxfs/xfs_attr_leaf.c
fs/xfs/libxfs/xfs_bmap.c
fs/xfs/libxfs/xfs_da_btree.c
fs/xfs/libxfs/xfs_defer.c
fs/xfs/libxfs/xfs_dir2.c
fs/xfs/libxfs/xfs_dir2_block.c
fs/xfs/libxfs/xfs_dir2_sf.c
fs/xfs/libxfs/xfs_inode_fork.c
fs/xfs/libxfs/xfs_refcount.c
fs/xfs/libxfs/xfs_rmap.c
fs/xfs/scrub/attr.c
fs/xfs/scrub/fscounters.c
fs/xfs/scrub/symlink.c
fs/xfs/xfs_acl.c
fs/xfs/xfs_attr_inactive.c
fs/xfs/xfs_attr_list.c
fs/xfs/xfs_bmap_item.c
fs/xfs/xfs_buf.c
fs/xfs/xfs_buf_item.c
fs/xfs/xfs_dquot.c
fs/xfs/xfs_dquot_item.c
fs/xfs/xfs_error.c
fs/xfs/xfs_extent_busy.c
fs/xfs/xfs_extfree_item.c
fs/xfs/xfs_icache.c
fs/xfs/xfs_icreate_item.c
fs/xfs/xfs_inode.c
fs/xfs/xfs_inode_item.c
fs/xfs/xfs_ioctl.c
fs/xfs/xfs_ioctl32.c
fs/xfs/xfs_itable.c
fs/xfs/xfs_iwalk.c
fs/xfs/xfs_log.c
fs/xfs/xfs_log_cil.c
fs/xfs/xfs_log_recover.c
fs/xfs/xfs_mount.c
fs/xfs/xfs_mru_cache.c
fs/xfs/xfs_qm.c
fs/xfs/xfs_refcount_item.c
fs/xfs/xfs_rmap_item.c
fs/xfs/xfs_rtalloc.c
fs/xfs/xfs_trans.c
fs/xfs/xfs_trans_dquot.c

index 16bb9a3..7cd315a 100644 (file)
@@ -17,7 +17,7 @@ kmem_alloc(size_t size, xfs_km_flags_t flags)
 
        do {
                ptr = kmalloc(size, lflags);
-               if (ptr || (flags & (KM_MAYFAIL|KM_NOSLEEP)))
+               if (ptr || (flags & KM_MAYFAIL))
                        return ptr;
                if (!(++retries % 100))
                        xfs_err(NULL,
@@ -67,7 +67,7 @@ kmem_realloc(const void *old, size_t newsize, xfs_km_flags_t flags)
 
        do {
                ptr = krealloc(old, newsize, lflags);
-               if (ptr || (flags & (KM_MAYFAIL|KM_NOSLEEP)))
+               if (ptr || (flags & KM_MAYFAIL))
                        return ptr;
                if (!(++retries % 100))
                        xfs_err(NULL,
@@ -87,7 +87,7 @@ kmem_zone_alloc(kmem_zone_t *zone, xfs_km_flags_t flags)
 
        do {
                ptr = kmem_cache_alloc(zone, lflags);
-               if (ptr || (flags & (KM_MAYFAIL|KM_NOSLEEP)))
+               if (ptr || (flags & KM_MAYFAIL))
                        return ptr;
                if (!(++retries % 100))
                        xfs_err(NULL,
index 267655a..cb6fa79 100644 (file)
@@ -16,8 +16,6 @@
  */
 
 typedef unsigned __bitwise xfs_km_flags_t;
-#define KM_SLEEP       ((__force xfs_km_flags_t)0x0001u)
-#define KM_NOSLEEP     ((__force xfs_km_flags_t)0x0002u)
 #define KM_NOFS                ((__force xfs_km_flags_t)0x0004u)
 #define KM_MAYFAIL     ((__force xfs_km_flags_t)0x0008u)
 #define KM_ZERO                ((__force xfs_km_flags_t)0x0010u)
@@ -32,15 +30,11 @@ kmem_flags_convert(xfs_km_flags_t flags)
 {
        gfp_t   lflags;
 
-       BUG_ON(flags & ~(KM_SLEEP|KM_NOSLEEP|KM_NOFS|KM_MAYFAIL|KM_ZERO));
+       BUG_ON(flags & ~(KM_NOFS|KM_MAYFAIL|KM_ZERO));
 
-       if (flags & KM_NOSLEEP) {
-               lflags = GFP_ATOMIC | __GFP_NOWARN;
-       } else {
-               lflags = GFP_KERNEL | __GFP_NOWARN;
-               if (flags & KM_NOFS)
-                       lflags &= ~__GFP_FS;
-       }
+       lflags = GFP_KERNEL | __GFP_NOWARN;
+       if (flags & KM_NOFS)
+               lflags &= ~__GFP_FS;
 
        /*
         * Default page/slab allocator behavior is to retry for ever
index 372ad55..533b04a 100644 (file)
@@ -2205,7 +2205,7 @@ xfs_defer_agfl_block(
        ASSERT(xfs_bmap_free_item_zone != NULL);
        ASSERT(oinfo != NULL);
 
-       new = kmem_zone_alloc(xfs_bmap_free_item_zone, KM_SLEEP);
+       new = kmem_zone_alloc(xfs_bmap_free_item_zone, 0);
        new->xefi_startblock = XFS_AGB_TO_FSB(mp, agno, agbno);
        new->xefi_blockcount = 1;
        new->xefi_oinfo = *oinfo;
index 70eb941..1408638 100644 (file)
@@ -782,7 +782,7 @@ xfs_attr_shortform_to_leaf(
        ifp = dp->i_afp;
        sf = (xfs_attr_shortform_t *)ifp->if_u1.if_data;
        size = be16_to_cpu(sf->hdr.totsize);
-       tmpbuffer = kmem_alloc(size, KM_SLEEP);
+       tmpbuffer = kmem_alloc(size, 0);
        ASSERT(tmpbuffer != NULL);
        memcpy(tmpbuffer, ifp->if_u1.if_data, size);
        sf = (xfs_attr_shortform_t *)tmpbuffer;
@@ -985,7 +985,7 @@ xfs_attr3_leaf_to_shortform(
 
        trace_xfs_attr_leaf_to_sf(args);
 
-       tmpbuffer = kmem_alloc(args->geo->blksize, KM_SLEEP);
+       tmpbuffer = kmem_alloc(args->geo->blksize, 0);
        if (!tmpbuffer)
                return -ENOMEM;
 
@@ -1448,7 +1448,7 @@ xfs_attr3_leaf_compact(
 
        trace_xfs_attr_leaf_compact(args);
 
-       tmpbuffer = kmem_alloc(args->geo->blksize, KM_SLEEP);
+       tmpbuffer = kmem_alloc(args->geo->blksize, 0);
        memcpy(tmpbuffer, bp->b_addr, args->geo->blksize);
        memset(bp->b_addr, 0, args->geo->blksize);
        leaf_src = (xfs_attr_leafblock_t *)tmpbuffer;
@@ -2167,7 +2167,7 @@ xfs_attr3_leaf_unbalance(
                struct xfs_attr_leafblock *tmp_leaf;
                struct xfs_attr3_icleaf_hdr tmphdr;
 
-               tmp_leaf = kmem_zalloc(state->args->geo->blksize, KM_SLEEP);
+               tmp_leaf = kmem_zalloc(state->args->geo->blksize, 0);
 
                /*
                 * Copy the header into the temp leaf so that all the stuff
index 07aad70..65f4348 100644 (file)
@@ -553,7 +553,7 @@ __xfs_bmap_add_free(
 #endif
        ASSERT(xfs_bmap_free_item_zone != NULL);
 
-       new = kmem_zone_alloc(xfs_bmap_free_item_zone, KM_SLEEP);
+       new = kmem_zone_alloc(xfs_bmap_free_item_zone, 0);
        new->xefi_startblock = bno;
        new->xefi_blockcount = (xfs_extlen_t)len;
        if (oinfo)
@@ -1099,7 +1099,7 @@ xfs_bmap_add_attrfork(
        if (error)
                goto trans_cancel;
        ASSERT(ip->i_afp == NULL);
-       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, KM_SLEEP);
+       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, 0);
        ip->i_afp->if_flags = XFS_IFEXTENTS;
        logflags = 0;
        switch (ip->i_d.di_format) {
@@ -6094,7 +6094,7 @@ __xfs_bmap_add(
                        bmap->br_blockcount,
                        bmap->br_state);
 
-       bi = kmem_alloc(sizeof(struct xfs_bmap_intent), KM_SLEEP | KM_NOFS);
+       bi = kmem_alloc(sizeof(struct xfs_bmap_intent), KM_NOFS);
        INIT_LIST_HEAD(&bi->bi_list);
        bi->bi_type = type;
        bi->bi_owner = ip;
index 0bf56e9..4fd1223 100644 (file)
@@ -2098,7 +2098,7 @@ xfs_da_grow_inode_int(
                 * If we didn't get it and the block might work if fragmented,
                 * try without the CONTIG flag.  Loop until we get it all.
                 */
-               mapp = kmem_alloc(sizeof(*mapp) * count, KM_SLEEP);
+               mapp = kmem_alloc(sizeof(*mapp) * count, 0);
                for (b = *bno, mapi = 0; b < *bno + count; ) {
                        nmap = min(XFS_BMAP_MAX_NMAP, count);
                        c = (int)(*bno + count - b);
@@ -2480,7 +2480,7 @@ xfs_buf_map_from_irec(
 
        if (nirecs > 1) {
                map = kmem_zalloc(nirecs * sizeof(struct xfs_buf_map),
-                                 KM_SLEEP | KM_NOFS);
+                                 KM_NOFS);
                if (!map)
                        return -ENOMEM;
                *mapp = map;
@@ -2539,7 +2539,7 @@ xfs_dabuf_map(
                 */
                if (nfsb != 1)
                        irecs = kmem_zalloc(sizeof(irec) * nfsb,
-                                           KM_SLEEP | KM_NOFS);
+                                           KM_NOFS);
 
                nirecs = nfsb;
                error = xfs_bmapi_read(dp, (xfs_fileoff_t)bno, nfsb, irecs,
index eb2be2a..2255752 100644 (file)
@@ -517,7 +517,7 @@ xfs_defer_add(
        }
        if (!dfp) {
                dfp = kmem_alloc(sizeof(struct xfs_defer_pending),
-                               KM_SLEEP | KM_NOFS);
+                               KM_NOFS);
                dfp->dfp_type = type;
                dfp->dfp_intent = NULL;
                dfp->dfp_done = NULL;
index 6784072..867c5de 100644 (file)
@@ -110,9 +110,9 @@ xfs_da_mount(
 
        nodehdr_size = mp->m_dir_inode_ops->node_hdr_size;
        mp->m_dir_geo = kmem_zalloc(sizeof(struct xfs_da_geometry),
-                                   KM_SLEEP | KM_MAYFAIL);
+                                   KM_MAYFAIL);
        mp->m_attr_geo = kmem_zalloc(sizeof(struct xfs_da_geometry),
-                                    KM_SLEEP | KM_MAYFAIL);
+                                    KM_MAYFAIL);
        if (!mp->m_dir_geo || !mp->m_attr_geo) {
                kmem_free(mp->m_dir_geo);
                kmem_free(mp->m_attr_geo);
@@ -217,7 +217,7 @@ xfs_dir_init(
        if (error)
                return error;
 
-       args = kmem_zalloc(sizeof(*args), KM_SLEEP | KM_NOFS);
+       args = kmem_zalloc(sizeof(*args), KM_NOFS);
        if (!args)
                return -ENOMEM;
 
@@ -254,7 +254,7 @@ xfs_dir_createname(
                XFS_STATS_INC(dp->i_mount, xs_dir_create);
        }
 
-       args = kmem_zalloc(sizeof(*args), KM_SLEEP | KM_NOFS);
+       args = kmem_zalloc(sizeof(*args), KM_NOFS);
        if (!args)
                return -ENOMEM;
 
@@ -353,7 +353,7 @@ xfs_dir_lookup(
         * lockdep Doing this avoids having to add a bunch of lockdep class
         * annotations into the reclaim path for the ilock.
         */
-       args = kmem_zalloc(sizeof(*args), KM_SLEEP | KM_NOFS);
+       args = kmem_zalloc(sizeof(*args), KM_NOFS);
        args->geo = dp->i_mount->m_dir_geo;
        args->name = name->name;
        args->namelen = name->len;
@@ -422,7 +422,7 @@ xfs_dir_removename(
        ASSERT(S_ISDIR(VFS_I(dp)->i_mode));
        XFS_STATS_INC(dp->i_mount, xs_dir_remove);
 
-       args = kmem_zalloc(sizeof(*args), KM_SLEEP | KM_NOFS);
+       args = kmem_zalloc(sizeof(*args), KM_NOFS);
        if (!args)
                return -ENOMEM;
 
@@ -483,7 +483,7 @@ xfs_dir_replace(
        if (rval)
                return rval;
 
-       args = kmem_zalloc(sizeof(*args), KM_SLEEP | KM_NOFS);
+       args = kmem_zalloc(sizeof(*args), KM_NOFS);
        if (!args)
                return -ENOMEM;
 
index a6fb0cc..9595ced 100644 (file)
@@ -1092,7 +1092,7 @@ xfs_dir2_sf_to_block(
         * Copy the directory into a temporary buffer.
         * Then pitch the incore inode data so we can make extents.
         */
-       sfp = kmem_alloc(ifp->if_bytes, KM_SLEEP);
+       sfp = kmem_alloc(ifp->if_bytes, 0);
        memcpy(sfp, oldsfp, ifp->if_bytes);
 
        xfs_idata_realloc(dp, -ifp->if_bytes, XFS_DATA_FORK);
index 0335892..85f14fc 100644 (file)
@@ -164,7 +164,7 @@ xfs_dir2_block_to_sf(
         * can free the block and copy the formatted data into the inode literal
         * area.
         */
-       dst = kmem_alloc(mp->m_sb.sb_inodesize, KM_SLEEP);
+       dst = kmem_alloc(mp->m_sb.sb_inodesize, 0);
        hdr = bp->b_addr;
 
        /*
@@ -436,7 +436,7 @@ xfs_dir2_sf_addname_hard(
 
        sfp = (xfs_dir2_sf_hdr_t *)dp->i_df.if_u1.if_data;
        old_isize = (int)dp->i_d.di_size;
-       buf = kmem_alloc(old_isize, KM_SLEEP);
+       buf = kmem_alloc(old_isize, 0);
        oldsfp = (xfs_dir2_sf_hdr_t *)buf;
        memcpy(oldsfp, sfp, old_isize);
        /*
@@ -1096,7 +1096,7 @@ xfs_dir2_sf_toino4(
         * Don't want xfs_idata_realloc copying the data here.
         */
        oldsize = dp->i_df.if_bytes;
-       buf = kmem_alloc(oldsize, KM_SLEEP);
+       buf = kmem_alloc(oldsize, 0);
        oldsfp = (xfs_dir2_sf_hdr_t *)dp->i_df.if_u1.if_data;
        ASSERT(oldsfp->i8count == 1);
        memcpy(buf, oldsfp, oldsize);
@@ -1169,7 +1169,7 @@ xfs_dir2_sf_toino8(
         * Don't want xfs_idata_realloc copying the data here.
         */
        oldsize = dp->i_df.if_bytes;
-       buf = kmem_alloc(oldsize, KM_SLEEP);
+       buf = kmem_alloc(oldsize, 0);
        oldsfp = (xfs_dir2_sf_hdr_t *)dp->i_df.if_u1.if_data;
        ASSERT(oldsfp->i8count == 0);
        memcpy(buf, oldsfp, oldsize);
index bf3e040..c643bee 100644 (file)
@@ -94,7 +94,7 @@ xfs_iformat_fork(
                return 0;
 
        ASSERT(ip->i_afp == NULL);
-       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, KM_SLEEP | KM_NOFS);
+       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, KM_NOFS);
 
        switch (dip->di_aformat) {
        case XFS_DINODE_FMT_LOCAL:
@@ -147,7 +147,7 @@ xfs_init_local_fork(
 
        if (size) {
                real_size = roundup(mem_size, 4);
-               ifp->if_u1.if_data = kmem_alloc(real_size, KM_SLEEP | KM_NOFS);
+               ifp->if_u1.if_data = kmem_alloc(real_size, KM_NOFS);
                memcpy(ifp->if_u1.if_data, data, size);
                if (zero_terminate)
                        ifp->if_u1.if_data[size] = '\0';
@@ -302,7 +302,7 @@ xfs_iformat_btree(
        }
 
        ifp->if_broot_bytes = size;
-       ifp->if_broot = kmem_alloc(size, KM_SLEEP | KM_NOFS);
+       ifp->if_broot = kmem_alloc(size, KM_NOFS);
        ASSERT(ifp->if_broot != NULL);
        /*
         * Copy and convert from the on-disk structure
@@ -367,7 +367,7 @@ xfs_iroot_realloc(
                 */
                if (ifp->if_broot_bytes == 0) {
                        new_size = XFS_BMAP_BROOT_SPACE_CALC(mp, rec_diff);
-                       ifp->if_broot = kmem_alloc(new_size, KM_SLEEP | KM_NOFS);
+                       ifp->if_broot = kmem_alloc(new_size, KM_NOFS);
                        ifp->if_broot_bytes = (int)new_size;
                        return;
                }
@@ -382,7 +382,7 @@ xfs_iroot_realloc(
                new_max = cur_max + rec_diff;
                new_size = XFS_BMAP_BROOT_SPACE_CALC(mp, new_max);
                ifp->if_broot = kmem_realloc(ifp->if_broot, new_size,
-                               KM_SLEEP | KM_NOFS);
+                               KM_NOFS);
                op = (char *)XFS_BMAP_BROOT_PTR_ADDR(mp, ifp->if_broot, 1,
                                                     ifp->if_broot_bytes);
                np = (char *)XFS_BMAP_BROOT_PTR_ADDR(mp, ifp->if_broot, 1,
@@ -408,7 +408,7 @@ xfs_iroot_realloc(
        else
                new_size = 0;
        if (new_size > 0) {
-               new_broot = kmem_alloc(new_size, KM_SLEEP | KM_NOFS);
+               new_broot = kmem_alloc(new_size, KM_NOFS);
                /*
                 * First copy over the btree block header.
                 */
@@ -492,7 +492,7 @@ xfs_idata_realloc(
         * We enforce that here.
         */
        ifp->if_u1.if_data = kmem_realloc(ifp->if_u1.if_data,
-                       roundup(new_size, 4), KM_SLEEP | KM_NOFS);
+                       roundup(new_size, 4), KM_NOFS);
        ifp->if_bytes = new_size;
 }
 
@@ -683,7 +683,7 @@ xfs_ifork_init_cow(
                return;
 
        ip->i_cowfp = kmem_zone_zalloc(xfs_ifork_zone,
-                                      KM_SLEEP | KM_NOFS);
+                                      KM_NOFS);
        ip->i_cowfp->if_flags = XFS_IFEXTENTS;
        ip->i_cformat = XFS_DINODE_FMT_EXTENTS;
        ip->i_cnextents = 0;
index 51bb9bd..14b9e3e 100644 (file)
@@ -1189,7 +1189,7 @@ __xfs_refcount_add(
                        blockcount);
 
        ri = kmem_alloc(sizeof(struct xfs_refcount_intent),
-                       KM_SLEEP | KM_NOFS);
+                       KM_NOFS);
        INIT_LIST_HEAD(&ri->ri_list);
        ri->ri_type = type;
        ri->ri_startblock = startblock;
@@ -1602,7 +1602,7 @@ xfs_refcount_recover_extent(
        if (be32_to_cpu(rec->refc.rc_refcount) != 1)
                return -EFSCORRUPTED;
 
-       rr = kmem_alloc(sizeof(struct xfs_refcount_recovery), KM_SLEEP);
+       rr = kmem_alloc(sizeof(struct xfs_refcount_recovery), 0);
        xfs_refcount_btrec_to_irec(rec, &rr->rr_rrec);
        list_add_tail(&rr->rr_list, debris);
 
index e6aeb39..12a61f0 100644 (file)
@@ -2287,7 +2287,7 @@ __xfs_rmap_add(
                        bmap->br_blockcount,
                        bmap->br_state);
 
-       ri = kmem_alloc(sizeof(struct xfs_rmap_intent), KM_SLEEP | KM_NOFS);
+       ri = kmem_alloc(sizeof(struct xfs_rmap_intent), KM_NOFS);
        INIT_LIST_HEAD(&ri->ri_list);
        ri->ri_type = type;
        ri->ri_owner = owner;
index 1afc58b..922a515 100644 (file)
@@ -80,7 +80,7 @@ xchk_setup_xattr(
         * without the inode lock held, which means we can sleep.
         */
        if (sc->flags & XCHK_TRY_HARDER) {
-               error = xchk_setup_xattr_buf(sc, XATTR_SIZE_MAX, KM_SLEEP);
+               error = xchk_setup_xattr_buf(sc, XATTR_SIZE_MAX, 0);
                if (error)
                        return error;
        }
index fc3f510..98f82d7 100644 (file)
@@ -125,7 +125,7 @@ xchk_setup_fscounters(
        struct xchk_fscounters  *fsc;
        int                     error;
 
-       sc->buf = kmem_zalloc(sizeof(struct xchk_fscounters), KM_SLEEP);
+       sc->buf = kmem_zalloc(sizeof(struct xchk_fscounters), 0);
        if (!sc->buf)
                return -ENOMEM;
        fsc = sc->buf;
index 99c0b12..5641ae5 100644 (file)
@@ -22,7 +22,7 @@ xchk_setup_symlink(
        struct xfs_inode        *ip)
 {
        /* Allocate the buffer without the inode lock held. */
-       sc->buf = kmem_zalloc_large(XFS_SYMLINK_MAXLEN + 1, KM_SLEEP);
+       sc->buf = kmem_zalloc_large(XFS_SYMLINK_MAXLEN + 1, 0);
        if (!sc->buf)
                return -ENOMEM;
 
index cbda40d..86c0697 100644 (file)
@@ -135,7 +135,7 @@ xfs_get_acl(struct inode *inode, int type)
         * go out to the disk.
         */
        len = XFS_ACL_MAX_SIZE(ip->i_mount);
-       xfs_acl = kmem_zalloc_large(len, KM_SLEEP);
+       xfs_acl = kmem_zalloc_large(len, 0);
        if (!xfs_acl)
                return ERR_PTR(-ENOMEM);
 
@@ -180,7 +180,7 @@ __xfs_set_acl(struct inode *inode, struct posix_acl *acl, int type)
                struct xfs_acl *xfs_acl;
                int len = XFS_ACL_MAX_SIZE(ip->i_mount);
 
-               xfs_acl = kmem_zalloc_large(len, KM_SLEEP);
+               xfs_acl = kmem_zalloc_large(len, 0);
                if (!xfs_acl)
                        return -ENOMEM;
 
index dc93c51..a640a28 100644 (file)
@@ -147,7 +147,7 @@ xfs_attr3_leaf_inactive(
         * Allocate storage for a list of all the "remote" value extents.
         */
        size = count * sizeof(xfs_attr_inactive_list_t);
-       list = kmem_alloc(size, KM_SLEEP);
+       list = kmem_alloc(size, 0);
 
        /*
         * Identify each of the "remote" value extents.
index 58fc820..00758fd 100644 (file)
@@ -109,7 +109,7 @@ xfs_attr_shortform_list(xfs_attr_list_context_t *context)
         * It didn't all fit, so we have to sort everything on hashval.
         */
        sbsize = sf->hdr.count * sizeof(*sbuf);
-       sbp = sbuf = kmem_alloc(sbsize, KM_SLEEP | KM_NOFS);
+       sbp = sbuf = kmem_alloc(sbsize, KM_NOFS);
 
        /*
         * Scan the attribute list for the rest of the entries, storing
index 9fa4a7e..989163e 100644 (file)
@@ -141,7 +141,7 @@ xfs_bui_init(
 {
        struct xfs_bui_log_item         *buip;
 
-       buip = kmem_zone_zalloc(xfs_bui_zone, KM_SLEEP);
+       buip = kmem_zone_zalloc(xfs_bui_zone, 0);
 
        xfs_log_item_init(mp, &buip->bui_item, XFS_LI_BUI, &xfs_bui_item_ops);
        buip->bui_format.bui_nextents = XFS_BUI_MAX_FAST_EXTENTS;
@@ -218,7 +218,7 @@ xfs_trans_get_bud(
 {
        struct xfs_bud_log_item         *budp;
 
-       budp = kmem_zone_zalloc(xfs_bud_zone, KM_SLEEP);
+       budp = kmem_zone_zalloc(xfs_bud_zone, 0);
        xfs_log_item_init(tp->t_mountp, &budp->bud_item, XFS_LI_BUD,
                          &xfs_bud_item_ops);
        budp->bud_buip = buip;
index ca08490..d3be9ab 100644 (file)
@@ -1741,7 +1741,7 @@ xfs_alloc_buftarg(
 {
        xfs_buftarg_t           *btp;
 
-       btp = kmem_zalloc(sizeof(*btp), KM_SLEEP | KM_NOFS);
+       btp = kmem_zalloc(sizeof(*btp), KM_NOFS);
 
        btp->bt_mount = mp;
        btp->bt_dev =  bdev->bd_dev;
index 7dcaec5..d74fbd1 100644 (file)
@@ -702,7 +702,7 @@ xfs_buf_item_get_format(
        }
 
        bip->bli_formats = kmem_zalloc(count * sizeof(struct xfs_buf_log_format),
-                               KM_SLEEP);
+                               0);
        if (!bip->bli_formats)
                return -ENOMEM;
        return 0;
@@ -747,7 +747,7 @@ xfs_buf_item_init(
                return 0;
        }
 
-       bip = kmem_zone_zalloc(xfs_buf_item_zone, KM_SLEEP);
+       bip = kmem_zone_zalloc(xfs_buf_item_zone, 0);
        xfs_log_item_init(mp, &bip->bli_item, XFS_LI_BUF, &xfs_buf_item_ops);
        bip->bli_buf = bp;
 
index fb1ad44..7ce770e 100644 (file)
@@ -440,7 +440,7 @@ xfs_dquot_alloc(
 {
        struct xfs_dquot        *dqp;
 
-       dqp = kmem_zone_zalloc(xfs_qm_dqzone, KM_SLEEP);
+       dqp = kmem_zone_zalloc(xfs_qm_dqzone, 0);
 
        dqp->dq_flags = type;
        dqp->q_core.d_id = cpu_to_be32(id);
index 282ec5a..d60647d 100644 (file)
@@ -347,7 +347,7 @@ xfs_qm_qoff_logitem_init(
 {
        struct xfs_qoff_logitem *qf;
 
-       qf = kmem_zalloc(sizeof(struct xfs_qoff_logitem), KM_SLEEP);
+       qf = kmem_zalloc(sizeof(struct xfs_qoff_logitem), 0);
 
        xfs_log_item_init(mp, &qf->qql_item, XFS_LI_QUOTAOFF, start ?
                        &xfs_qm_qoffend_logitem_ops : &xfs_qm_qoff_logitem_ops);
index 544c948..849fd44 100644 (file)
@@ -213,7 +213,7 @@ xfs_errortag_init(
        struct xfs_mount        *mp)
 {
        mp->m_errortag = kmem_zalloc(sizeof(unsigned int) * XFS_ERRTAG_MAX,
-                       KM_SLEEP | KM_MAYFAIL);
+                       KM_MAYFAIL);
        if (!mp->m_errortag)
                return -ENOMEM;
 
index 0ed6837..2183d87 100644 (file)
@@ -33,7 +33,7 @@ xfs_extent_busy_insert(
        struct rb_node          **rbp;
        struct rb_node          *parent = NULL;
 
-       new = kmem_zalloc(sizeof(struct xfs_extent_busy), KM_SLEEP);
+       new = kmem_zalloc(sizeof(struct xfs_extent_busy), 0);
        new->agno = agno;
        new->bno = bno;
        new->length = len;
index 86f6512..e44efc4 100644 (file)
@@ -163,9 +163,9 @@ xfs_efi_init(
        if (nextents > XFS_EFI_MAX_FAST_EXTENTS) {
                size = (uint)(sizeof(xfs_efi_log_item_t) +
                        ((nextents - 1) * sizeof(xfs_extent_t)));
-               efip = kmem_zalloc(size, KM_SLEEP);
+               efip = kmem_zalloc(size, 0);
        } else {
-               efip = kmem_zone_zalloc(xfs_efi_zone, KM_SLEEP);
+               efip = kmem_zone_zalloc(xfs_efi_zone, 0);
        }
 
        xfs_log_item_init(mp, &efip->efi_item, XFS_LI_EFI, &xfs_efi_item_ops);
@@ -333,9 +333,9 @@ xfs_trans_get_efd(
        if (nextents > XFS_EFD_MAX_FAST_EXTENTS) {
                efdp = kmem_zalloc(sizeof(struct xfs_efd_log_item) +
                                (nextents - 1) * sizeof(struct xfs_extent),
-                               KM_SLEEP);
+                               0);
        } else {
-               efdp = kmem_zone_zalloc(xfs_efd_zone, KM_SLEEP);
+               efdp = kmem_zone_zalloc(xfs_efd_zone, 0);
        }
 
        xfs_log_item_init(tp->t_mountp, &efdp->efd_item, XFS_LI_EFD,
index 0b0fd10..944add5 100644 (file)
@@ -40,7 +40,7 @@ xfs_inode_alloc(
         * KM_MAYFAIL and return NULL here on ENOMEM. Set the
         * code up to do this anyway.
         */
-       ip = kmem_zone_alloc(xfs_inode_zone, KM_SLEEP);
+       ip = kmem_zone_alloc(xfs_inode_zone, 0);
        if (!ip)
                return NULL;
        if (inode_init_always(mp->m_super, VFS_I(ip))) {
index d99a0a3..3ebd1b7 100644 (file)
@@ -89,7 +89,7 @@ xfs_icreate_log(
 {
        struct xfs_icreate_item *icp;
 
-       icp = kmem_zone_zalloc(xfs_icreate_zone, KM_SLEEP);
+       icp = kmem_zone_zalloc(xfs_icreate_zone, 0);
 
        xfs_log_item_init(tp->t_mountp, &icp->ic_item, XFS_LI_ICREATE,
                          &xfs_icreate_item_ops);
index 6467d5e..cdb97fa 100644 (file)
@@ -2018,7 +2018,7 @@ xfs_iunlink_add_backref(
        if (XFS_TEST_ERROR(false, pag->pag_mount, XFS_ERRTAG_IUNLINK_FALLBACK))
                return 0;
 
-       iu = kmem_zalloc(sizeof(*iu), KM_SLEEP | KM_NOFS);
+       iu = kmem_zalloc(sizeof(*iu), KM_NOFS);
        iu->iu_agino = prev_agino;
        iu->iu_next_unlinked = this_agino;
 
index c9a502e..bb8f076 100644 (file)
@@ -651,7 +651,7 @@ xfs_inode_item_init(
        struct xfs_inode_log_item *iip;
 
        ASSERT(ip->i_itemp == NULL);
-       iip = ip->i_itemp = kmem_zone_zalloc(xfs_ili_zone, KM_SLEEP);
+       iip = ip->i_itemp = kmem_zone_zalloc(xfs_ili_zone, 0);
 
        iip->ili_inode = ip;
        xfs_log_item_init(mp, &iip->ili_item, XFS_LI_INODE,
index 6f7848c..9ea5166 100644 (file)
@@ -396,7 +396,7 @@ xfs_attrlist_by_handle(
        if (IS_ERR(dentry))
                return PTR_ERR(dentry);
 
-       kbuf = kmem_zalloc_large(al_hreq.buflen, KM_SLEEP);
+       kbuf = kmem_zalloc_large(al_hreq.buflen, 0);
        if (!kbuf)
                goto out_dput;
 
@@ -434,7 +434,7 @@ xfs_attrmulti_attr_get(
 
        if (*len > XFS_XATTR_SIZE_MAX)
                return -EINVAL;
-       kbuf = kmem_zalloc_large(*len, KM_SLEEP);
+       kbuf = kmem_zalloc_large(*len, 0);
        if (!kbuf)
                return -ENOMEM;
 
index 7bd7534..1e08bf7 100644 (file)
@@ -381,7 +381,7 @@ xfs_compat_attrlist_by_handle(
                return PTR_ERR(dentry);
 
        error = -ENOMEM;
-       kbuf = kmem_zalloc_large(al_hreq.buflen, KM_SLEEP);
+       kbuf = kmem_zalloc_large(al_hreq.buflen, 0);
        if (!kbuf)
                goto out_dput;
 
index f5c955d..b049e73 100644 (file)
@@ -169,7 +169,7 @@ xfs_bulkstat_one(
        ASSERT(breq->icount == 1);
 
        bc.buf = kmem_zalloc(sizeof(struct xfs_bulkstat),
-                       KM_SLEEP | KM_MAYFAIL);
+                       KM_MAYFAIL);
        if (!bc.buf)
                return -ENOMEM;
 
@@ -243,7 +243,7 @@ xfs_bulkstat(
                return 0;
 
        bc.buf = kmem_zalloc(sizeof(struct xfs_bulkstat),
-                       KM_SLEEP | KM_MAYFAIL);
+                       KM_MAYFAIL);
        if (!bc.buf)
                return -ENOMEM;
 
index 8c7d727..86ce52c 100644 (file)
@@ -616,7 +616,7 @@ xfs_iwalk_threaded(
                if (xfs_pwork_ctl_want_abort(&pctl))
                        break;
 
-               iwag = kmem_zalloc(sizeof(struct xfs_iwalk_ag), KM_SLEEP);
+               iwag = kmem_zalloc(sizeof(struct xfs_iwalk_ag), 0);
                iwag->mp = mp;
                iwag->iwalk_fn = iwalk_fn;
                iwag->data = data;
index 7fc3c1a..50d854b 100644 (file)
@@ -428,8 +428,7 @@ xfs_log_reserve(
        XFS_STATS_INC(mp, xs_try_logspace);
 
        ASSERT(*ticp == NULL);
-       tic = xlog_ticket_alloc(log, unit_bytes, cnt, client, permanent,
-                               KM_SLEEP);
+       tic = xlog_ticket_alloc(log, unit_bytes, cnt, client, permanent, 0);
        *ticp = tic;
 
        xlog_grant_push_ail(log, tic->t_cnt ? tic->t_unit_res * tic->t_cnt
index fa5602d..ef652ab 100644 (file)
@@ -38,7 +38,7 @@ xlog_cil_ticket_alloc(
        struct xlog_ticket *tic;
 
        tic = xlog_ticket_alloc(log, 0, 1, XFS_TRANSACTION, 0,
-                               KM_SLEEP|KM_NOFS);
+                               KM_NOFS);
 
        /*
         * set the current reservation to zero so we know to steal the basic
@@ -186,7 +186,7 @@ xlog_cil_alloc_shadow_bufs(
                         */
                        kmem_free(lip->li_lv_shadow);
 
-                       lv = kmem_alloc_large(buf_size, KM_SLEEP | KM_NOFS);
+                       lv = kmem_alloc_large(buf_size, KM_NOFS);
                        memset(lv, 0, xlog_cil_iovec_space(niovecs));
 
                        lv->lv_item = lip;
@@ -660,7 +660,7 @@ xlog_cil_push(
        if (!cil)
                return 0;
 
-       new_ctx = kmem_zalloc(sizeof(*new_ctx), KM_SLEEP|KM_NOFS);
+       new_ctx = kmem_zalloc(sizeof(*new_ctx), KM_NOFS);
        new_ctx->ticket = xlog_cil_ticket_alloc(log);
 
        down_write(&cil->xc_ctx_lock);
@@ -1179,11 +1179,11 @@ xlog_cil_init(
        struct xfs_cil  *cil;
        struct xfs_cil_ctx *ctx;
 
-       cil = kmem_zalloc(sizeof(*cil), KM_SLEEP|KM_MAYFAIL);
+       cil = kmem_zalloc(sizeof(*cil), KM_MAYFAIL);
        if (!cil)
                return -ENOMEM;
 
-       ctx = kmem_zalloc(sizeof(*ctx), KM_SLEEP|KM_MAYFAIL);
+       ctx = kmem_zalloc(sizeof(*ctx), KM_MAYFAIL);
        if (!ctx) {
                kmem_free(cil);
                return -ENOMEM;
index 13d1d3e..eafb36c 100644 (file)
@@ -1960,7 +1960,7 @@ xlog_recover_buffer_pass1(
                }
        }
 
-       bcp = kmem_alloc(sizeof(struct xfs_buf_cancel), KM_SLEEP);
+       bcp = kmem_alloc(sizeof(struct xfs_buf_cancel), 0);
        bcp->bc_blkno = buf_f->blf_blkno;
        bcp->bc_len = buf_f->blf_len;
        bcp->bc_refcount = 1;
@@ -2930,7 +2930,7 @@ xlog_recover_inode_pass2(
        if (item->ri_buf[0].i_len == sizeof(struct xfs_inode_log_format)) {
                in_f = item->ri_buf[0].i_addr;
        } else {
-               in_f = kmem_alloc(sizeof(struct xfs_inode_log_format), KM_SLEEP);
+               in_f = kmem_alloc(sizeof(struct xfs_inode_log_format), 0);
                need_free = 1;
                error = xfs_inode_item_format_convert(&item->ri_buf[0], in_f);
                if (error)
@@ -4161,7 +4161,7 @@ xlog_recover_add_item(
 {
        xlog_recover_item_t     *item;
 
-       item = kmem_zalloc(sizeof(xlog_recover_item_t), KM_SLEEP);
+       item = kmem_zalloc(sizeof(xlog_recover_item_t), 0);
        INIT_LIST_HEAD(&item->ri_list);
        list_add_tail(&item->ri_list, head);
 }
@@ -4201,7 +4201,7 @@ xlog_recover_add_to_cont_trans(
        old_ptr = item->ri_buf[item->ri_cnt-1].i_addr;
        old_len = item->ri_buf[item->ri_cnt-1].i_len;
 
-       ptr = kmem_realloc(old_ptr, len + old_len, KM_SLEEP);
+       ptr = kmem_realloc(old_ptr, len + old_len, 0);
        memcpy(&ptr[old_len], dp, len);
        item->ri_buf[item->ri_cnt-1].i_len += len;
        item->ri_buf[item->ri_cnt-1].i_addr = ptr;
@@ -4261,7 +4261,7 @@ xlog_recover_add_to_trans(
                return 0;
        }
 
-       ptr = kmem_alloc(len, KM_SLEEP);
+       ptr = kmem_alloc(len, 0);
        memcpy(ptr, dp, len);
        in_f = (struct xfs_inode_log_format *)ptr;
 
@@ -4289,7 +4289,7 @@ xlog_recover_add_to_trans(
                item->ri_total = in_f->ilf_size;
                item->ri_buf =
                        kmem_zalloc(item->ri_total * sizeof(xfs_log_iovec_t),
-                                   KM_SLEEP);
+                                   0);
        }
        ASSERT(item->ri_total > item->ri_cnt);
        /* Description region is ri_buf[0] */
@@ -4423,7 +4423,7 @@ xlog_recover_ophdr_to_trans(
         * This is a new transaction so allocate a new recovery container to
         * hold the recovery ops that will follow.
         */
-       trans = kmem_zalloc(sizeof(struct xlog_recover), KM_SLEEP);
+       trans = kmem_zalloc(sizeof(struct xlog_recover), 0);
        trans->r_log_tid = tid;
        trans->r_lsn = be64_to_cpu(rhead->h_lsn);
        INIT_LIST_HEAD(&trans->r_itemq);
@@ -5527,7 +5527,7 @@ xlog_do_log_recovery(
         */
        log->l_buf_cancel_table = kmem_zalloc(XLOG_BC_TABLE_SIZE *
                                                 sizeof(struct list_head),
-                                                KM_SLEEP);
+                                                0);
        for (i = 0; i < XLOG_BC_TABLE_SIZE; i++)
                INIT_LIST_HEAD(&log->l_buf_cancel_table[i]);
 
index 322da69..da50b12 100644 (file)
@@ -82,7 +82,7 @@ xfs_uuid_mount(
        if (hole < 0) {
                xfs_uuid_table = kmem_realloc(xfs_uuid_table,
                        (xfs_uuid_table_size + 1) * sizeof(*xfs_uuid_table),
-                       KM_SLEEP);
+                       0);
                hole = xfs_uuid_table_size++;
        }
        xfs_uuid_table[hole] = *uuid;
index 7473881..a06661d 100644 (file)
@@ -333,12 +333,12 @@ xfs_mru_cache_create(
        if (!(grp_time = msecs_to_jiffies(lifetime_ms) / grp_count))
                return -EINVAL;
 
-       if (!(mru = kmem_zalloc(sizeof(*mru), KM_SLEEP)))
+       if (!(mru = kmem_zalloc(sizeof(*mru), 0)))
                return -ENOMEM;
 
        /* An extra list is needed to avoid reaping up to a grp_time early. */
        mru->grp_count = grp_count + 1;
-       mru->lists = kmem_zalloc(mru->grp_count * sizeof(*mru->lists), KM_SLEEP);
+       mru->lists = kmem_zalloc(mru->grp_count * sizeof(*mru->lists), 0);
 
        if (!mru->lists) {
                err = -ENOMEM;
index 5e7a37f..ecd8ce1 100644 (file)
@@ -642,7 +642,7 @@ xfs_qm_init_quotainfo(
 
        ASSERT(XFS_IS_QUOTA_RUNNING(mp));
 
-       qinf = mp->m_quotainfo = kmem_zalloc(sizeof(xfs_quotainfo_t), KM_SLEEP);
+       qinf = mp->m_quotainfo = kmem_zalloc(sizeof(xfs_quotainfo_t), 0);
 
        error = list_lru_init(&qinf->qi_lru);
        if (error)
@@ -978,7 +978,7 @@ xfs_qm_reset_dqcounts_buf(
        if (qip->i_d.di_nblocks == 0)
                return 0;
 
-       map = kmem_alloc(XFS_DQITER_MAP_SIZE * sizeof(*map), KM_SLEEP);
+       map = kmem_alloc(XFS_DQITER_MAP_SIZE * sizeof(*map), 0);
 
        lblkno = 0;
        maxlblkcnt = XFS_B_TO_FSB(mp, mp->m_super->s_maxbytes);
index d8288aa..db0e0d7 100644 (file)
@@ -144,9 +144,9 @@ xfs_cui_init(
        ASSERT(nextents > 0);
        if (nextents > XFS_CUI_MAX_FAST_EXTENTS)
                cuip = kmem_zalloc(xfs_cui_log_item_sizeof(nextents),
-                               KM_SLEEP);
+                               0);
        else
-               cuip = kmem_zone_zalloc(xfs_cui_zone, KM_SLEEP);
+               cuip = kmem_zone_zalloc(xfs_cui_zone, 0);
 
        xfs_log_item_init(mp, &cuip->cui_item, XFS_LI_CUI, &xfs_cui_item_ops);
        cuip->cui_format.cui_nextents = nextents;
@@ -223,7 +223,7 @@ xfs_trans_get_cud(
 {
        struct xfs_cud_log_item         *cudp;
 
-       cudp = kmem_zone_zalloc(xfs_cud_zone, KM_SLEEP);
+       cudp = kmem_zone_zalloc(xfs_cud_zone, 0);
        xfs_log_item_init(tp->t_mountp, &cudp->cud_item, XFS_LI_CUD,
                          &xfs_cud_item_ops);
        cudp->cud_cuip = cuip;
index 77ed557..8939e0e 100644 (file)
@@ -142,9 +142,9 @@ xfs_rui_init(
 
        ASSERT(nextents > 0);
        if (nextents > XFS_RUI_MAX_FAST_EXTENTS)
-               ruip = kmem_zalloc(xfs_rui_log_item_sizeof(nextents), KM_SLEEP);
+               ruip = kmem_zalloc(xfs_rui_log_item_sizeof(nextents), 0);
        else
-               ruip = kmem_zone_zalloc(xfs_rui_zone, KM_SLEEP);
+               ruip = kmem_zone_zalloc(xfs_rui_zone, 0);
 
        xfs_log_item_init(mp, &ruip->rui_item, XFS_LI_RUI, &xfs_rui_item_ops);
        ruip->rui_format.rui_nextents = nextents;
@@ -244,7 +244,7 @@ xfs_trans_get_rud(
 {
        struct xfs_rud_log_item         *rudp;
 
-       rudp = kmem_zone_zalloc(xfs_rud_zone, KM_SLEEP);
+       rudp = kmem_zone_zalloc(xfs_rud_zone, 0);
        xfs_log_item_init(tp->t_mountp, &rudp->rud_item, XFS_LI_RUD,
                          &xfs_rud_item_ops);
        rudp->rud_ruip = ruip;
index 5fa4db3..4a48a8c 100644 (file)
@@ -865,7 +865,7 @@ xfs_alloc_rsum_cache(
         * lower bound on the minimum level with any free extents. We can
         * continue without the cache if it couldn't be allocated.
         */
-       mp->m_rsum_cache = kmem_zalloc_large(rbmblocks, KM_SLEEP);
+       mp->m_rsum_cache = kmem_zalloc_large(rbmblocks, 0);
        if (!mp->m_rsum_cache)
                xfs_warn(mp, "could not allocate realtime summary cache");
 }
@@ -963,7 +963,7 @@ xfs_growfs_rt(
        /*
         * Allocate a new (fake) mount/sb.
         */
-       nmp = kmem_alloc(sizeof(*nmp), KM_SLEEP);
+       nmp = kmem_alloc(sizeof(*nmp), 0);
        /*
         * Loop over the bitmap blocks.
         * We will do everything one bitmap block at a time.
index d42a68d..f4795fd 100644 (file)
@@ -90,7 +90,7 @@ xfs_trans_dup(
 
        trace_xfs_trans_dup(tp, _RET_IP_);
 
-       ntp = kmem_zone_zalloc(xfs_trans_zone, KM_SLEEP);
+       ntp = kmem_zone_zalloc(xfs_trans_zone, 0);
 
        /*
         * Initialize the new transaction structure.
@@ -263,7 +263,7 @@ xfs_trans_alloc(
         * GFP_NOFS allocation context so that we avoid lockdep false positives
         * by doing GFP_KERNEL allocations inside sb_start_intwrite().
         */
-       tp = kmem_zone_zalloc(xfs_trans_zone, KM_SLEEP);
+       tp = kmem_zone_zalloc(xfs_trans_zone, 0);
        if (!(flags & XFS_TRANS_NO_WRITECOUNT))
                sb_start_intwrite(mp->m_super);
 
index 1027c9c..1645746 100644 (file)
@@ -863,7 +863,7 @@ STATIC void
 xfs_trans_alloc_dqinfo(
        xfs_trans_t     *tp)
 {
-       tp->t_dqinfo = kmem_zone_zalloc(xfs_qm_dqtrxzone, KM_SLEEP);
+       tp->t_dqinfo = kmem_zone_zalloc(xfs_qm_dqtrxzone, 0);
 }
 
 void