diff --git a/kernel/hashlib.h b/kernel/hashlib.h
index 3c824b8c3..4199e6f3a 100644
--- a/kernel/hashlib.h
+++ b/kernel/hashlib.h
@@ -147,7 +147,7 @@ struct hash_ptr_ops {
 		return a == b;
 	}
 	static inline unsigned int hash(const void *a) {
-		return (unsigned long)a;
+		return (intptr_t)a;
 	}
 };