Lines Matching refs:hash
21 * 4KiB offset in case of inode node, and direntry hash in case of a direntry
22 * node. We use "r5" hash borrowed from reiserfs.
35 * key_mask_hash - mask a valid hash value.
38 * We use hash values as offset in directories, so values %0 and %1 are
42 static inline uint32_t key_mask_hash(uint32_t hash)
44 hash &= UBIFS_S_KEY_HASH_MASK;
45 if (unlikely(hash <= 2))
46 hash += 3;
47 return hash;
51 * key_r5_hash - R5 hash function (borrowed from reiserfs).
71 * key_test_hash - testing hash function.
150 uint32_t hash = c->key_hash(fname_name(nm), fname_len(nm));
152 ubifs_assert(c, !(hash & ~UBIFS_S_KEY_HASH_MASK));
154 key->u32[1] = hash | (UBIFS_DENT_KEY << UBIFS_S_KEY_HASH_BITS);
159 * hash function.
163 * @hash: direntry name hash
167 uint32_t hash)
169 ubifs_assert(c, !(hash & ~UBIFS_S_KEY_HASH_MASK));
171 key->u32[1] = hash | (UBIFS_DENT_KEY << UBIFS_S_KEY_HASH_BITS);
186 uint32_t hash = c->key_hash(fname_name(nm), fname_len(nm));
188 ubifs_assert(c, !(hash & ~UBIFS_S_KEY_HASH_MASK));
190 key->j32[1] = cpu_to_le32(hash |
219 uint32_t hash = c->key_hash(fname_name(nm), fname_len(nm));
221 ubifs_assert(c, !(hash & ~UBIFS_S_KEY_HASH_MASK));
223 key->u32[1] = hash | (UBIFS_XENT_KEY << UBIFS_S_KEY_HASH_BITS);
237 uint32_t hash = c->key_hash(fname_name(nm), fname_len(nm));
239 ubifs_assert(c, !(hash & ~UBIFS_S_KEY_HASH_MASK));
241 key->j32[1] = cpu_to_le32(hash |
365 * key_hash - get directory entry hash.
367 * @key: the key to get hash from
376 * key_hash_flash - get directory entry hash from an on-flash formatted key.
378 * @k: the key to get hash from
515 * is_hash_key - is a key vulnerable to hash collisions.