Decoupling Architectural-specific Code (#35)
[lunaix-os.git] / lunaix-os / includes / lunaix / ds / hashtable.h
index c3aea3f451dd973d19802009307aafa92e812e1f..3a38af895be56444272eeca276bc17f77720d0d3 100644 (file)
@@ -13,7 +13,7 @@
 #ifndef __LUNAIX_HASHTABLE_H
 #define __LUNAIX_HASHTABLE_H
 
-#include <lib/hash.h>
+#include <klibc/hash.h>
 #include <lunaix/ds/llist.h>
 
 struct hbucket
@@ -21,9 +21,9 @@ struct hbucket
     struct hlist_node* head;
 };
 
-#define __hashkey(table, hash) (hash % (sizeof(table) / sizeof(table[0])))
+#define __hashkey(table, hash) ((hash) % (sizeof(table) / sizeof(table[0])))
 
-#define DECLARE_HASHTABLE(name, bucket_num) struct hbucket name[bucket_num];
+#define DECLARE_HASHTABLE(name, bucket_num) struct hbucket name[(bucket_num)];
 
 #define hashtable_bucket_foreach(bucket, pos, n, member)                       \
     for (pos = list_entry((bucket)->head, typeof(*pos), member);               \