UMA: unsign some variables related to allocation in hash_alloc().
As a followup to r343673, unsign some variables related to allocation since the hashsize cannot be negative. This gives a bit more space to handle bigger allocations and avoid some implicit casting. While here also unsign uh_hashmask, it makes little sense to keep that signed. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19148
This commit is contained in:
parent
7bc2a58ea6
commit
6929b7d1ab
@ -622,7 +622,7 @@ zone_timeout(uma_zone_t zone)
|
||||
static int
|
||||
hash_alloc(struct uma_hash *hash)
|
||||
{
|
||||
int oldsize;
|
||||
u_int oldsize;
|
||||
size_t alloc;
|
||||
|
||||
oldsize = hash->uh_hashsize;
|
||||
@ -666,8 +666,8 @@ static int
|
||||
hash_expand(struct uma_hash *oldhash, struct uma_hash *newhash)
|
||||
{
|
||||
uma_slab_t slab;
|
||||
int hval;
|
||||
int i;
|
||||
u_int hval;
|
||||
u_int idx;
|
||||
|
||||
if (!newhash->uh_slab_hash)
|
||||
return (0);
|
||||
@ -680,10 +680,10 @@ hash_expand(struct uma_hash *oldhash, struct uma_hash *newhash)
|
||||
* full rehash.
|
||||
*/
|
||||
|
||||
for (i = 0; i < oldhash->uh_hashsize; i++)
|
||||
while (!SLIST_EMPTY(&oldhash->uh_slab_hash[i])) {
|
||||
slab = SLIST_FIRST(&oldhash->uh_slab_hash[i]);
|
||||
SLIST_REMOVE_HEAD(&oldhash->uh_slab_hash[i], us_hlink);
|
||||
for (idx = 0; idx < oldhash->uh_hashsize; idx++)
|
||||
while (!SLIST_EMPTY(&oldhash->uh_slab_hash[idx])) {
|
||||
slab = SLIST_FIRST(&oldhash->uh_slab_hash[idx]);
|
||||
SLIST_REMOVE_HEAD(&oldhash->uh_slab_hash[idx], us_hlink);
|
||||
hval = UMA_HASH(newhash, slab->us_data);
|
||||
SLIST_INSERT_HEAD(&newhash->uh_slab_hash[hval],
|
||||
slab, us_hlink);
|
||||
|
@ -179,8 +179,8 @@ SLIST_HEAD(slabhead, uma_slab);
|
||||
|
||||
struct uma_hash {
|
||||
struct slabhead *uh_slab_hash; /* Hash table for slabs */
|
||||
int uh_hashsize; /* Current size of the hash table */
|
||||
int uh_hashmask; /* Mask used during hashing */
|
||||
u_int uh_hashsize; /* Current size of the hash table */
|
||||
u_int uh_hashmask; /* Mask used during hashing */
|
||||
};
|
||||
|
||||
/*
|
||||
@ -453,7 +453,7 @@ static __inline uma_slab_t
|
||||
hash_sfind(struct uma_hash *hash, uint8_t *data)
|
||||
{
|
||||
uma_slab_t slab;
|
||||
int hval;
|
||||
u_int hval;
|
||||
|
||||
hval = UMA_HASH(hash, data);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user