Skip to content

Commit b123176

Browse files
cmaiolinodjwong
authored andcommitted
xfs: Remove slab init wrappers
Remove kmem_zone_init() and kmem_zone_init_flags() together with their specific KM_* to SLAB_* flag wrappers. Use kmem_cache_create() directly. Reviewed-by: Darrick J. Wong <[email protected]> Signed-off-by: Carlos Maiolino <[email protected]> Signed-off-by: Darrick J. Wong <[email protected]>
1 parent 2a2b593 commit b123176

File tree

4 files changed

+68
-64
lines changed

4 files changed

+68
-64
lines changed

fs/xfs/kmem.h

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -78,27 +78,9 @@ kmem_zalloc_large(size_t size, xfs_km_flags_t flags)
7878
* Zone interfaces
7979
*/
8080

81-
#define KM_ZONE_HWALIGN SLAB_HWCACHE_ALIGN
82-
#define KM_ZONE_RECLAIM SLAB_RECLAIM_ACCOUNT
83-
#define KM_ZONE_SPREAD SLAB_MEM_SPREAD
84-
#define KM_ZONE_ACCOUNT SLAB_ACCOUNT
85-
8681
#define kmem_zone kmem_cache
8782
#define kmem_zone_t struct kmem_cache
8883

89-
static inline kmem_zone_t *
90-
kmem_zone_init(int size, char *zone_name)
91-
{
92-
return kmem_cache_create(zone_name, size, 0, 0, NULL);
93-
}
94-
95-
static inline kmem_zone_t *
96-
kmem_zone_init_flags(int size, char *zone_name, slab_flags_t flags,
97-
void (*construct)(void *))
98-
{
99-
return kmem_cache_create(zone_name, size, 0, flags, construct);
100-
}
101-
10284
static inline void
10385
kmem_zone_free(kmem_zone_t *zone, void *ptr)
10486
{

fs/xfs/xfs_buf.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2060,8 +2060,9 @@ xfs_buf_delwri_pushbuf(
20602060
int __init
20612061
xfs_buf_init(void)
20622062
{
2063-
xfs_buf_zone = kmem_zone_init_flags(sizeof(xfs_buf_t), "xfs_buf",
2064-
KM_ZONE_HWALIGN, NULL);
2063+
xfs_buf_zone = kmem_cache_create("xfs_buf",
2064+
sizeof(struct xfs_buf), 0,
2065+
SLAB_HWCACHE_ALIGN, NULL);
20652066
if (!xfs_buf_zone)
20662067
goto out;
20672068

fs/xfs/xfs_dquot.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1211,13 +1211,15 @@ xfs_dqlock2(
12111211
int __init
12121212
xfs_qm_init(void)
12131213
{
1214-
xfs_qm_dqzone =
1215-
kmem_zone_init(sizeof(struct xfs_dquot), "xfs_dquot");
1214+
xfs_qm_dqzone = kmem_cache_create("xfs_dquot",
1215+
sizeof(struct xfs_dquot),
1216+
0, 0, NULL);
12161217
if (!xfs_qm_dqzone)
12171218
goto out;
12181219

1219-
xfs_qm_dqtrxzone =
1220-
kmem_zone_init(sizeof(struct xfs_dquot_acct), "xfs_dqtrx");
1220+
xfs_qm_dqtrxzone = kmem_cache_create("xfs_dqtrx",
1221+
sizeof(struct xfs_dquot_acct),
1222+
0, 0, NULL);
12211223
if (!xfs_qm_dqtrxzone)
12221224
goto out_free_dqzone;
12231225

fs/xfs/xfs_super.c

Lines changed: 59 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1797,32 +1797,39 @@ MODULE_ALIAS_FS("xfs");
17971797
STATIC int __init
17981798
xfs_init_zones(void)
17991799
{
1800-
xfs_log_ticket_zone = kmem_zone_init(sizeof(xlog_ticket_t),
1801-
"xfs_log_ticket");
1800+
xfs_log_ticket_zone = kmem_cache_create("xfs_log_ticket",
1801+
sizeof(struct xlog_ticket),
1802+
0, 0, NULL);
18021803
if (!xfs_log_ticket_zone)
18031804
goto out;
18041805

1805-
xfs_bmap_free_item_zone = kmem_zone_init(
1806-
sizeof(struct xfs_extent_free_item),
1807-
"xfs_bmap_free_item");
1806+
xfs_bmap_free_item_zone = kmem_cache_create("xfs_bmap_free_item",
1807+
sizeof(struct xfs_extent_free_item),
1808+
0, 0, NULL);
18081809
if (!xfs_bmap_free_item_zone)
18091810
goto out_destroy_log_ticket_zone;
18101811

1811-
xfs_btree_cur_zone = kmem_zone_init(sizeof(xfs_btree_cur_t),
1812-
"xfs_btree_cur");
1812+
xfs_btree_cur_zone = kmem_cache_create("xfs_btree_cur",
1813+
sizeof(struct xfs_btree_cur),
1814+
0, 0, NULL);
18131815
if (!xfs_btree_cur_zone)
18141816
goto out_destroy_bmap_free_item_zone;
18151817

1816-
xfs_da_state_zone = kmem_zone_init(sizeof(xfs_da_state_t),
1817-
"xfs_da_state");
1818+
xfs_da_state_zone = kmem_cache_create("xfs_da_state",
1819+
sizeof(struct xfs_da_state),
1820+
0, 0, NULL);
18181821
if (!xfs_da_state_zone)
18191822
goto out_destroy_btree_cur_zone;
18201823

1821-
xfs_ifork_zone = kmem_zone_init(sizeof(struct xfs_ifork), "xfs_ifork");
1824+
xfs_ifork_zone = kmem_cache_create("xfs_ifork",
1825+
sizeof(struct xfs_ifork),
1826+
0, 0, NULL);
18221827
if (!xfs_ifork_zone)
18231828
goto out_destroy_da_state_zone;
18241829

1825-
xfs_trans_zone = kmem_zone_init(sizeof(xfs_trans_t), "xfs_trans");
1830+
xfs_trans_zone = kmem_cache_create("xf_trans",
1831+
sizeof(struct xfs_trans),
1832+
0, 0, NULL);
18261833
if (!xfs_trans_zone)
18271834
goto out_destroy_ifork_zone;
18281835

@@ -1832,70 +1839,82 @@ xfs_init_zones(void)
18321839
* size possible under XFS. This wastes a little bit of memory,
18331840
* but it is much faster.
18341841
*/
1835-
xfs_buf_item_zone = kmem_zone_init(sizeof(struct xfs_buf_log_item),
1836-
"xfs_buf_item");
1842+
xfs_buf_item_zone = kmem_cache_create("xfs_buf_item",
1843+
sizeof(struct xfs_buf_log_item),
1844+
0, 0, NULL);
18371845
if (!xfs_buf_item_zone)
18381846
goto out_destroy_trans_zone;
18391847

1840-
xfs_efd_zone = kmem_zone_init((sizeof(xfs_efd_log_item_t) +
1841-
((XFS_EFD_MAX_FAST_EXTENTS - 1) *
1842-
sizeof(xfs_extent_t))), "xfs_efd_item");
1848+
xfs_efd_zone = kmem_cache_create("xfs_efd_item",
1849+
(sizeof(struct xfs_efd_log_item) +
1850+
(XFS_EFD_MAX_FAST_EXTENTS - 1) *
1851+
sizeof(struct xfs_extent)),
1852+
0, 0, NULL);
18431853
if (!xfs_efd_zone)
18441854
goto out_destroy_buf_item_zone;
18451855

1846-
xfs_efi_zone = kmem_zone_init((sizeof(xfs_efi_log_item_t) +
1847-
((XFS_EFI_MAX_FAST_EXTENTS - 1) *
1848-
sizeof(xfs_extent_t))), "xfs_efi_item");
1856+
xfs_efi_zone = kmem_cache_create("xfs_efi_item",
1857+
(sizeof(struct xfs_efi_log_item) +
1858+
(XFS_EFI_MAX_FAST_EXTENTS - 1) *
1859+
sizeof(struct xfs_extent)),
1860+
0, 0, NULL);
18491861
if (!xfs_efi_zone)
18501862
goto out_destroy_efd_zone;
18511863

1852-
xfs_inode_zone =
1853-
kmem_zone_init_flags(sizeof(xfs_inode_t), "xfs_inode",
1854-
KM_ZONE_HWALIGN | KM_ZONE_RECLAIM | KM_ZONE_SPREAD |
1855-
KM_ZONE_ACCOUNT, xfs_fs_inode_init_once);
1864+
xfs_inode_zone = kmem_cache_create("xfs_inode",
1865+
sizeof(struct xfs_inode), 0,
1866+
(SLAB_HWCACHE_ALIGN |
1867+
SLAB_RECLAIM_ACCOUNT |
1868+
SLAB_MEM_SPREAD | SLAB_ACCOUNT),
1869+
xfs_fs_inode_init_once);
18561870
if (!xfs_inode_zone)
18571871
goto out_destroy_efi_zone;
18581872

1859-
xfs_ili_zone =
1860-
kmem_zone_init_flags(sizeof(xfs_inode_log_item_t), "xfs_ili",
1861-
KM_ZONE_SPREAD, NULL);
1873+
xfs_ili_zone = kmem_cache_create("xfs_ili",
1874+
sizeof(struct xfs_inode_log_item), 0,
1875+
SLAB_MEM_SPREAD, NULL);
18621876
if (!xfs_ili_zone)
18631877
goto out_destroy_inode_zone;
1864-
xfs_icreate_zone = kmem_zone_init(sizeof(struct xfs_icreate_item),
1865-
"xfs_icr");
1878+
1879+
xfs_icreate_zone = kmem_cache_create("xfs_icr",
1880+
sizeof(struct xfs_icreate_item),
1881+
0, 0, NULL);
18661882
if (!xfs_icreate_zone)
18671883
goto out_destroy_ili_zone;
18681884

1869-
xfs_rud_zone = kmem_zone_init(sizeof(struct xfs_rud_log_item),
1870-
"xfs_rud_item");
1885+
xfs_rud_zone = kmem_cache_create("xfs_rud_item",
1886+
sizeof(struct xfs_rud_log_item),
1887+
0, 0, NULL);
18711888
if (!xfs_rud_zone)
18721889
goto out_destroy_icreate_zone;
18731890

1874-
xfs_rui_zone = kmem_zone_init(
1891+
xfs_rui_zone = kmem_cache_create("xfs_rui_item",
18751892
xfs_rui_log_item_sizeof(XFS_RUI_MAX_FAST_EXTENTS),
1876-
"xfs_rui_item");
1893+
0, 0, NULL);
18771894
if (!xfs_rui_zone)
18781895
goto out_destroy_rud_zone;
18791896

1880-
xfs_cud_zone = kmem_zone_init(sizeof(struct xfs_cud_log_item),
1881-
"xfs_cud_item");
1897+
xfs_cud_zone = kmem_cache_create("xfs_cud_item",
1898+
sizeof(struct xfs_cud_log_item),
1899+
0, 0, NULL);
18821900
if (!xfs_cud_zone)
18831901
goto out_destroy_rui_zone;
18841902

1885-
xfs_cui_zone = kmem_zone_init(
1903+
xfs_cui_zone = kmem_cache_create("xfs_cui_item",
18861904
xfs_cui_log_item_sizeof(XFS_CUI_MAX_FAST_EXTENTS),
1887-
"xfs_cui_item");
1905+
0, 0, NULL);
18881906
if (!xfs_cui_zone)
18891907
goto out_destroy_cud_zone;
18901908

1891-
xfs_bud_zone = kmem_zone_init(sizeof(struct xfs_bud_log_item),
1892-
"xfs_bud_item");
1909+
xfs_bud_zone = kmem_cache_create("xfs_bud_item",
1910+
sizeof(struct xfs_bud_log_item),
1911+
0, 0, NULL);
18931912
if (!xfs_bud_zone)
18941913
goto out_destroy_cui_zone;
18951914

1896-
xfs_bui_zone = kmem_zone_init(
1915+
xfs_bui_zone = kmem_cache_create("xfs_bui_item",
18971916
xfs_bui_log_item_sizeof(XFS_BUI_MAX_FAST_EXTENTS),
1898-
"xfs_bui_item");
1917+
0, 0, NULL);
18991918
if (!xfs_bui_zone)
19001919
goto out_destroy_bud_zone;
19011920

0 commit comments

Comments
 (0)