From 2cb718af9a854a98c0a86f0d7de83fa31ff7b67c Mon Sep 17 00:00:00 2001
From: Konstantin Osipov <kostja@tarantool.org>
Date: Mon, 23 Dec 2013 21:36:40 +0400
Subject: [PATCH] [small] Make a few members uint32_t rather than size_t.

---
 src/lib/small/mempool.c    | 6 +++---
 src/lib/small/mempool.h    | 2 +-
 src/lib/small/region.h     | 4 ++--
 src/lib/small/slab_arena.c | 2 +-
 src/lib/small/slab_arena.h | 6 +++---
 src/lib/small/slab_cache.c | 2 +-
 src/lib/small/slab_cache.h | 8 ++++----
 test/unit/slab_arena.c     | 2 +-
 8 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/src/lib/small/mempool.c b/src/lib/small/mempool.c
index 052242470a..905e05d411 100644
--- a/src/lib/small/mempool.c
+++ b/src/lib/small/mempool.c
@@ -157,7 +157,7 @@ mempool_create_with_order(struct mempool *pool, struct slab_cache *cache,
 	pool->objsize = objsize;
 	pool->slab_order = order;
 	/* Account for slab meta. */
-	size_t slab_size = slab_order_size(pool->cache, pool->slab_order) -
+	uint32_t slab_size = slab_order_size(pool->cache, pool->slab_order) -
 		mslab_sizeof();
 	/* Calculate how many objects will actually fit in a slab. */
 	/*
@@ -169,10 +169,10 @@ mempool_create_with_order(struct mempool *pool, struct slab_cache *cache,
 	 * X * objsize + X/8 = slab_size
 	 * X = (8 * slab_size)/(8 * objsize + 1)
 	 */
-	size_t objcount = (CHAR_BIT * slab_size)/(CHAR_BIT * objsize + 1);
+	uint32_t objcount = (CHAR_BIT * slab_size)/(CHAR_BIT * objsize + 1);
 	/* How many elements of slab->map can map objcount. */
 	assert(objcount);
-	size_t mapsize = (objcount + MEMPOOL_MAP_BIT - 1)/MEMPOOL_MAP_BIT;
+	uint32_t mapsize = (objcount + MEMPOOL_MAP_BIT - 1)/MEMPOOL_MAP_BIT;
 	/* Adjust the result of integer division, which may be too large. */
 	while (objcount * objsize + mapsize * MEMPOOL_MAP_SIZEOF > slab_size) {
 		objcount--;
diff --git a/src/lib/small/mempool.h b/src/lib/small/mempool.h
index e54e720f5c..03e10b807f 100644
--- a/src/lib/small/mempool.h
+++ b/src/lib/small/mempool.h
@@ -112,7 +112,7 @@ struct mslab {
 	mbitmap_t map[0];
 };
 
-static inline size_t
+static inline uint32_t
 mslab_sizeof()
 {
 	return small_align(sizeof(struct mslab), sizeof(intptr_t));
diff --git a/src/lib/small/region.h b/src/lib/small/region.h
index b974742327..e06fbd4d4e 100644
--- a/src/lib/small/region.h
+++ b/src/lib/small/region.h
@@ -120,7 +120,7 @@ struct rslab
 	uint32_t used;
 };
 
-static inline size_t
+static inline uint32_t
 rslab_sizeof()
 {
 	return small_align(sizeof(struct rslab), sizeof(intptr_t));
@@ -133,7 +133,7 @@ rslab_data(struct rslab *slab)
 }
 
 /** How much memory is available in a given block? */
-static inline size_t
+static inline uint32_t
 rslab_unused(struct rslab *slab)
 {
 	return slab->slab.size - rslab_sizeof() - slab->used;
diff --git a/src/lib/small/slab_arena.c b/src/lib/small/slab_arena.c
index 798c496f8b..6dabe4dbff 100644
--- a/src/lib/small/slab_arena.c
+++ b/src/lib/small/slab_arena.c
@@ -105,7 +105,7 @@ pow2round(size_t size)
 void
 slab_arena_create(struct slab_arena *arena,
 		  size_t prealloc, size_t maxalloc,
-		size_t slab_size, int flags)
+		  uint32_t slab_size, int flags)
 {
 	assert(flags & (MAP_PRIVATE | MAP_SHARED));
 	lf_lifo_init(&arena->cache);
diff --git a/src/lib/small/slab_arena.h b/src/lib/small/slab_arena.h
index 45e14c2a5c..b4bbaa3b76 100644
--- a/src/lib/small/slab_arena.h
+++ b/src/lib/small/slab_arena.h
@@ -70,7 +70,7 @@ struct slab_arena {
 	 * Typical value is 4Mb, which makes it possible to
 	 * allocate objects of size up to ~1MB.
 	 */
-	size_t slab_size;
+	uint32_t slab_size;
 	/**
 	 * How much memory is preallocated during initialization
 	 * of slab_arena.
@@ -98,8 +98,8 @@ struct slab_arena {
 
 /** Initialize an arena.  */
 void
-slab_arena_create(struct slab_arena *arena, size_t slab_size,
-		  size_t prealloc, size_t maxalloc, int flags);
+slab_arena_create(struct slab_arena *arena, size_t prealloc,
+		  size_t maxalloc, uint32_t slab_size, int flags);
 
 /** Destroy an arena. */
 void
diff --git a/src/lib/small/slab_cache.c b/src/lib/small/slab_cache.c
index 5a59c7a9c0..e955e4bad9 100644
--- a/src/lib/small/slab_cache.c
+++ b/src/lib/small/slab_cache.c
@@ -160,7 +160,7 @@ slab_merge(struct slab_cache *cache, struct slab *slab, struct slab *buddy)
 
 void
 slab_cache_create(struct slab_cache *cache, struct slab_arena *arena,
-		  size_t order0_size)
+		  uint32_t order0_size)
 {
 	cache->arena = arena;
 
diff --git a/src/lib/small/slab_cache.h b/src/lib/small/slab_cache.h
index 86131231b7..8111908302 100644
--- a/src/lib/small/slab_cache.h
+++ b/src/lib/small/slab_cache.h
@@ -130,7 +130,7 @@ struct slab_cache {
 	 * defines the number of "orders" of slab cache.
 	 * This distance can't be more than ORDER_MAX.
 	 */
-	size_t order0_size;
+	uint32_t order0_size;
 	/*
 	 * Binary logarithm of order0_size, useful in pointer
 	 * arithmetics.
@@ -163,7 +163,7 @@ struct slab_cache {
 
 void
 slab_cache_create(struct slab_cache *cache, struct slab_arena *arena,
-		  size_t order0_size);
+		  uint32_t order0_size);
 
 void
 slab_cache_destroy(struct slab_cache *cache);
@@ -181,14 +181,14 @@ struct slab *
 slab_from_ptr(struct slab_cache *cache, void *ptr, uint8_t order);
 
 /* Aligned size of slab meta. */
-static inline size_t
+static inline uint32_t
 slab_sizeof()
 {
 	return small_align(sizeof(struct slab), sizeof(intptr_t));
 }
 
 /** Useful size of a slab. */
-static inline size_t
+static inline uint32_t
 slab_size(struct slab *slab)
 {
 	return slab->size - slab_sizeof();
diff --git a/test/unit/slab_arena.c b/test/unit/slab_arena.c
index 56f04c3190..9533377e49 100644
--- a/test/unit/slab_arena.c
+++ b/test/unit/slab_arena.c
@@ -9,7 +9,7 @@ void
 slab_arena_print(struct slab_arena *arena)
 {
 	printf("arena->prealloc = %zu\narena->maxalloc = %zu\n"
-	       "arena->used = %zu\narena->slab_size = %zu\n",
+	       "arena->used = %zu\narena->slab_size = %u\n",
 	       arena->prealloc, arena->maxalloc,
 	       arena->used, arena->slab_size);
 }
-- 
GitLab