]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs: Remove kmem_zone_zalloc() usage
authorCarlos Maiolino <cmaiolino@redhat.com>
Tue, 15 Sep 2020 19:59:36 +0000 (15:59 -0400)
committerEric Sandeen <sandeen@sandeen.net>
Tue, 15 Sep 2020 19:59:36 +0000 (15:59 -0400)
Source kernel commit: 32a2b11f467642ea700bc0b01f4693e52ec0fabd

Use kmem_cache_zalloc() directly.

With the exception of xlog_ticket_alloc() which will be dealt on the
next patch for readability.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Carlos Maiolino <cmaiolino@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
13 files changed:
include/kmem.h
libxfs/kmem.c
libxfs/logitem.c
libxfs/rdwr.c
libxfs/trans.c
libxfs/xfs_alloc_btree.c
libxfs/xfs_bmap.c
libxfs/xfs_bmap_btree.c
libxfs/xfs_da_btree.c
libxfs/xfs_ialloc_btree.c
libxfs/xfs_inode_fork.c
libxfs/xfs_refcount_btree.c
libxfs/xfs_rmap_btree.c

index 9eb49d172c8d0c38c62df5ba4585a8084ce35dba..75fb00579904f0e14e1e6e05ce09c114068626f8 100644 (file)
@@ -20,11 +20,14 @@ typedef struct kmem_zone {
 typedef unsigned int __bitwise gfp_t;
 
 #define GFP_KERNEL     ((__force gfp_t)0)
+#define GFP_NOFS       ((__force gfp_t)0)
 #define __GFP_NOFAIL   ((__force gfp_t)0)
 
+#define __GFP_ZERO     (__force gfp_t)1
+
 extern kmem_zone_t *kmem_zone_init(int, char *);
 extern void    *kmem_cache_alloc(kmem_zone_t *, gfp_t);
-extern void    *kmem_zone_zalloc(kmem_zone_t *, int);
+extern void    *kmem_cache_zalloc(kmem_zone_t *, gfp_t);
 extern int     kmem_zone_destroy(kmem_zone_t *);
 
 static inline void
index 76234ba138f5823de2d109ae9750d312b284b1e4..a7a3f2d07102469041f8448bc7a9a8913badc143 100644 (file)
@@ -54,7 +54,7 @@ kmem_cache_alloc(kmem_zone_t *zone, gfp_t flags)
 }
 
 void *
-kmem_zone_zalloc(kmem_zone_t *zone, int flags)
+kmem_cache_zalloc(kmem_zone_t *zone, gfp_t flags)
 {
        void    *ptr = kmem_cache_alloc(zone, flags);
 
index 165eeb75bed21837f5ab3ed474786888dd747a7c..40f9400f1903b4551c523eb1102cf8d78e9cf227 100644 (file)
@@ -96,7 +96,7 @@ xfs_buf_item_init(
                }
        }
 
-       bip = (xfs_buf_log_item_t *)kmem_zone_zalloc(xfs_buf_item_zone, 0);
+       bip = kmem_cache_zalloc(xfs_buf_item_zone, 0);
 #ifdef LI_DEBUG
        fprintf(stderr, "adding buf item %p for not-logged buffer %p\n",
                bip, bp);
@@ -138,7 +138,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, 0);
+       iip = ip->i_itemp = kmem_cache_zalloc(xfs_ili_zone, 0);
 #ifdef LI_DEBUG
        fprintf(stderr, "inode_item_init for inode %llu, iip=%p\n",
                ip->i_ino, iip);
index 5167c58e337a4e7d3e3614da6dce0e31eeb12edc..79c1029b110954052d7e9a4d6d018937d46ffd2d 100644 (file)
@@ -452,7 +452,7 @@ __libxfs_getbufr(int blen)
                        bp->b_maps = NULL;
                }
        } else
-               bp = kmem_zone_zalloc(xfs_buf_zone, 0);
+               bp = kmem_cache_zalloc(xfs_buf_zone, 0);
        pthread_mutex_unlock(&xfs_buf_freelist.cm_mutex);
        bp->b_ops = NULL;
        if (bp->b_flags & LIBXFS_B_DIRTY)
@@ -1250,7 +1250,7 @@ libxfs_iget(
        struct xfs_buf          *bp;
        int                     error = 0;
 
-       ip = kmem_zone_zalloc(xfs_inode_zone, 0);
+       ip = kmem_cache_zalloc(xfs_inode_zone, 0);
        if (!ip)
                return -ENOMEM;
 
index af3342755c6dd56ec128d2d5690571a94c2fd816..51ce83021e879f4eba036881936769a79ae49d92 100644 (file)
@@ -141,7 +141,7 @@ xfs_trans_dup(
 {
        struct xfs_trans        *ntp;
 
-       ntp = kmem_zone_zalloc(xfs_trans_zone, 0);
+       ntp = kmem_cache_zalloc(xfs_trans_zone, 0);
 
        /*
         * Initialize the new transaction structure.
@@ -258,7 +258,7 @@ libxfs_trans_alloc(
        struct xfs_trans        *tp;
        int                     error;
 
-       tp = kmem_zone_zalloc(xfs_trans_zone, 0);
+       tp = kmem_cache_zalloc(xfs_trans_zone, 0);
        tp->t_mountp = mp;
        INIT_LIST_HEAD(&tp->t_items);
        INIT_LIST_HEAD(&tp->t_dfops);
index 87dd4ff86a9ef87ddbf3eb7770ed4bba028d508e..2198bbffe6237914aa94c09e00acb23f371d138a 100644 (file)
@@ -478,7 +478,7 @@ xfs_allocbt_init_common(
 
        ASSERT(btnum == XFS_BTNUM_BNO || btnum == XFS_BTNUM_CNT);
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
+       cur = kmem_cache_zalloc(xfs_btree_cur_zone, GFP_NOFS | __GFP_NOFAIL);
 
        cur->bc_tp = tp;
        cur->bc_mp = mp;
index 08c30bd2e4073294a6c739a9da8bba2c4634bee6..a6df058f97c2872d6a0176ca03f8170c0e8ecbf0 100644 (file)
@@ -1092,7 +1092,10 @@ xfs_bmap_add_attrfork(
        if (error)
                goto trans_cancel;
        ASSERT(ip->i_afp == NULL);
-       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, 0);
+
+       ip->i_afp = kmem_cache_zalloc(xfs_ifork_zone,
+                                     GFP_KERNEL | __GFP_NOFAIL);
+
        ip->i_afp->if_format = XFS_DINODE_FMT_EXTENTS;
        ip->i_afp->if_flags = XFS_IFEXTENTS;
        logflags = 0;
index 579160b773729bbe36a4077b9c42429db8acd058..1ec9f5ffbfe665f311710a1604f3ec5c7b1faa24 100644 (file)
@@ -550,7 +550,7 @@ xfs_bmbt_init_cursor(
        struct xfs_btree_cur    *cur;
        ASSERT(whichfork != XFS_COW_FORK);
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
+       cur = kmem_cache_zalloc(xfs_btree_cur_zone, GFP_NOFS | __GFP_NOFAIL);
 
        cur->bc_tp = tp;
        cur->bc_mp = mp;
index 4e909caa954a116fc99f49d39f0cc2cdf6e6f7e6..315354a6999bdef8d3ac9d434703a1440dfe60cc 100644 (file)
@@ -78,7 +78,7 @@ kmem_zone_t *xfs_da_state_zone;       /* anchor for state struct zone */
 xfs_da_state_t *
 xfs_da_state_alloc(void)
 {
-       return kmem_zone_zalloc(xfs_da_state_zone, KM_NOFS);
+       return kmem_cache_zalloc(xfs_da_state_zone, GFP_NOFS | __GFP_NOFAIL);
 }
 
 /*
index 0c5c55f060e7aeb2c3e8f1774d6399d6c056ec0b..41c308c2e54c4c8ad65cecafdd1e8053e98a4dd3 100644 (file)
@@ -410,7 +410,7 @@ xfs_inobt_init_common(
 {
        struct xfs_btree_cur    *cur;
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
+       cur = kmem_cache_zalloc(xfs_btree_cur_zone, GFP_NOFS | __GFP_NOFAIL);
        cur->bc_tp = tp;
        cur->bc_mp = mp;
        cur->bc_btnum = btnum;
index f2de1ad523df46e4952ca2859bbbd6163f0f4a85..30522d695e3befc849c0ad2b8b1df409b2714e9e 100644 (file)
@@ -289,7 +289,7 @@ xfs_iformat_attr_fork(
         * Initialize the extent count early, as the per-format routines may
         * depend on it.
         */
-       ip->i_afp = kmem_zone_zalloc(xfs_ifork_zone, KM_NOFS);
+       ip->i_afp = kmem_cache_zalloc(xfs_ifork_zone, GFP_NOFS | __GFP_NOFAIL);
        ip->i_afp->if_format = dip->di_aformat;
        if (unlikely(ip->i_afp->if_format == 0)) /* pre IRIX 6.2 file system */
                ip->i_afp->if_format = XFS_DINODE_FMT_EXTENTS;
@@ -671,8 +671,8 @@ xfs_ifork_init_cow(
        if (ip->i_cowfp)
                return;
 
-       ip->i_cowfp = kmem_zone_zalloc(xfs_ifork_zone,
-                                      KM_NOFS);
+       ip->i_cowfp = kmem_cache_zalloc(xfs_ifork_zone,
+                                      GFP_NOFS | __GFP_NOFAIL);
        ip->i_cowfp->if_flags = XFS_IFEXTENTS;
        ip->i_cowfp->if_format = XFS_DINODE_FMT_EXTENTS;
 }
index 1f116b05e0830416da166712438d89959be2086d..eb48197bb0a2b71a9fa4abb7867ce0be4d91a275 100644 (file)
@@ -322,7 +322,7 @@ xfs_refcountbt_init_common(
        ASSERT(agno != NULLAGNUMBER);
        ASSERT(agno < mp->m_sb.sb_agcount);
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
+       cur = kmem_cache_zalloc(xfs_btree_cur_zone, GFP_NOFS | __GFP_NOFAIL);
        cur->bc_tp = tp;
        cur->bc_mp = mp;
        cur->bc_btnum = XFS_BTNUM_REFC;
index cf81e43653c11fe66e99e19d31ac51e299675787..8ddc17908bf948cef4e2132c1dd3b0dafb252798 100644 (file)
@@ -454,7 +454,7 @@ xfs_rmapbt_init_common(
 {
        struct xfs_btree_cur    *cur;
 
-       cur = kmem_zone_zalloc(xfs_btree_cur_zone, KM_NOFS);
+       cur = kmem_cache_zalloc(xfs_btree_cur_zone, GFP_NOFS | __GFP_NOFAIL);
        cur->bc_tp = tp;
        cur->bc_mp = mp;
        /* Overlapping btree; 2 keys per pointer. */