| 12345678910111213141516171819202122232425262728 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- #ifndef HASH_H
- #define HASH_H
- static inline unsigned int hash_str(const char *s)
- {
- /* fnv32 hash */
- unsigned int hash = 2166136261U;
- for (; *s; s++)
- hash = (hash ^ *s) * 0x01000193;
- return hash;
- }
- /* simplified version of functions from include/linux/hash.h */
- #define GOLDEN_RATIO_32 0x61C88647
- static inline unsigned int hash_32(unsigned int val)
- {
- return 0x61C88647 * val;
- }
- static inline unsigned int hash_ptr(const void *ptr)
- {
- return hash_32((unsigned int)(unsigned long)ptr);
- }
- #endif /* HASH_H */
|