X-Git-Url: https://pd.if.org/git/?p=nbds;a=blobdiff_plain;f=map%2Funsafe_skiplist.c;fp=map%2Funsafe_skiplist.c;h=ee755f333f52333639f6f0b227e83509bcfc634d;hp=596dcde423da48c69399a7e02bb60c562ad5e681;hb=ff3c302d5e137d9653c656eee016bacf5d988d66;hpb=86fd9c8abfbacea2902b4fe42a8a4664b2a531cf diff --git a/map/unsafe_skiplist.c b/map/unsafe_skiplist.c index 596dcde..ee755f3 100644 --- a/map/unsafe_skiplist.c +++ b/map/unsafe_skiplist.c @@ -13,7 +13,7 @@ #include "runtime.h" #include "mem.h" -#define MAX_LEVELS 32 +#define MAX_LEVELS 24 typedef struct node { map_key_t key; @@ -33,7 +33,7 @@ struct sl { }; static int random_levels (skiplist_t *sl) { - unsigned r = nbd_rand(); + uint64_t r = nbd_rand(); int z = __builtin_ctz(r); int levels = (int)(z / 1.5); if (levels == 0)