Home
last modified time | relevance | path

Searched full:hash (Results 1 – 25 of 1789) sorted by relevance

12345678910>>...72

/Linux-v5.10/samples/bpf/
Dhash_func01.h3 * Based on Paul Hsieh's (LGPG 2.1) hash function
4 * From: http://www.azillionmonkeys.com/qed/hash.html
11 __u32 hash = initval; in SuperFastHash() local
23 hash += get16bits (data); in SuperFastHash()
24 tmp = (get16bits (data+2) << 11) ^ hash; in SuperFastHash()
25 hash = (hash << 16) ^ tmp; in SuperFastHash()
27 hash += hash >> 11; in SuperFastHash()
32 case 3: hash += get16bits (data); in SuperFastHash()
33 hash ^= hash << 16; in SuperFastHash()
34 hash ^= ((signed char)data[sizeof (__u16)]) << 18; in SuperFastHash()
[all …]
/Linux-v5.10/net/batman-adv/
Dhash.c7 #include "hash.h"
14 /* clears the hash */
15 static void batadv_hash_init(struct batadv_hashtable *hash) in batadv_hash_init() argument
19 for (i = 0; i < hash->size; i++) { in batadv_hash_init()
20 INIT_HLIST_HEAD(&hash->table[i]); in batadv_hash_init()
21 spin_lock_init(&hash->list_locks[i]); in batadv_hash_init()
24 atomic_set(&hash->generation, 0); in batadv_hash_init()
28 * batadv_hash_destroy() - Free only the hashtable and the hash itself
29 * @hash: hash object to destroy
31 void batadv_hash_destroy(struct batadv_hashtable *hash) in batadv_hash_destroy() argument
[all …]
Dhash.h44 /** @list_locks: spinlock for each hash list entry */
54 /* allocates and clears the hash */
58 void batadv_hash_set_lock_class(struct batadv_hashtable *hash,
61 /* free only the hashtable and the hash itself. */
62 void batadv_hash_destroy(struct batadv_hashtable *hash);
66 * @hash: storage hash table
67 * @compare: callback to determine if 2 hash elements are identical
68 * @choose: callback calculating the hash index
72 * Return: 0 on success, 1 if the element already is in the hash
75 static inline int batadv_hash_add(struct batadv_hashtable *hash, in batadv_hash_add() argument
[all …]
/Linux-v5.10/include/linux/
Drhashtable.h3 * Resizable, Scalable, Concurrent Hash Table
32 * which is linked into as hash chain from the hash table - or one
33 * of two or more hash tables when the rhashtable is being resized.
36 * the hash bucket. This allows us to be sure we've found the end
38 * The value stored in the hash bucket has BIT(0) used as a lock bit.
51 * The maximum (not average) chain length grows with the size of the hash
54 * The value of 16 is selected so that even if the hash table grew to
65 * struct bucket_table - Table of hash buckets
66 * @size: Number of hash buckets
69 * @hash_rnd: Random seed to fold into hash
[all …]
Dstringhash.h7 #include <linux/hash.h>
10 * Routines for hashing strings of bytes to a 32-bit hash value.
12 * These hash functions are NOT GUARANTEED STABLE between kernel
18 * malicious inputs; much slower hash functions are required for that.
29 * unsigned long hash = init_name_hash;
31 * hash = partial_name_hash(tolower(*p++), hash);
32 * hash = end_name_hash(hash);
35 * abuses it to hash 16-bit values.
38 /* Hash courtesy of the R5 hash in reiserfs modulo sign bits */
41 /* partial hash update function. Assume roughly 4 bits per character */
[all …]
Dxxhash.h2 * xxHash - Extremely Fast Hash algorithm
44 * xxHash is an extremely fast Hash algorithm, running at RAM speed limits.
64 * Q.Score is a measure of quality of the hash function.
81 * Simple Hash Functions
85 * xxh32() - calculate the 32-bit hash of the input with a given seed.
87 * @input: The data to hash.
88 * @length: The length of the data to hash.
93 * Return: The 32-bit hash of the data.
98 * xxh64() - calculate the 64-bit hash of the input with a given seed.
100 * @input: The data to hash.
[all …]
/Linux-v5.10/net/ceph/crush/
Dhash.c3 # include <linux/crush/hash.h>
5 # include "hash.h"
10 * https://burtleburtle.net/bob/hash/evahash.html
29 __u32 hash = crush_hash_seed ^ a; in crush_hash32_rjenkins1() local
33 crush_hashmix(b, x, hash); in crush_hash32_rjenkins1()
34 crush_hashmix(y, a, hash); in crush_hash32_rjenkins1()
35 return hash; in crush_hash32_rjenkins1()
40 __u32 hash = crush_hash_seed ^ a ^ b; in crush_hash32_rjenkins1_2() local
43 crush_hashmix(a, b, hash); in crush_hash32_rjenkins1_2()
44 crush_hashmix(x, a, hash); in crush_hash32_rjenkins1_2()
[all …]
/Linux-v5.10/drivers/net/xen-netback/
Dhash.c50 spin_lock_irqsave(&vif->hash.cache.lock, flags); in xenvif_add_hash()
54 list_for_each_entry_rcu(entry, &vif->hash.cache.list, link, in xenvif_add_hash()
55 lockdep_is_held(&vif->hash.cache.lock)) { in xenvif_add_hash()
65 new->seq = atomic_inc_return(&vif->hash.cache.seq); in xenvif_add_hash()
66 list_add_rcu(&new->link, &vif->hash.cache.list); in xenvif_add_hash()
68 if (++vif->hash.cache.count > xenvif_hash_cache_size) { in xenvif_add_hash()
70 vif->hash.cache.count--; in xenvif_add_hash()
75 spin_unlock_irqrestore(&vif->hash.cache.lock, flags); in xenvif_add_hash()
86 val = xen_netif_toeplitz_hash(vif->hash.key, in xenvif_new_hash()
87 sizeof(vif->hash.key), in xenvif_new_hash()
[all …]
/Linux-v5.10/Documentation/admin-guide/device-mapper/
Dverity.rst21 This is the type of the on-disk hash format.
37 This is the device that supplies the hash tree data. It may be
44 Each block corresponds to one digest on the hash device.
47 The size of a hash block in bytes.
56 to the root block of the hash tree.
59 The cryptographic hash algorithm used for this device. This should
63 The hexadecimal encoding of the cryptographic hash of the root hash block
64 and the salt. This hash should be trusted as there is no other authenticity
96 Use forward error correction (FEC) to recover from corruption if hash
98 may be the same device where data and hash blocks reside, in which case
[all …]
/Linux-v5.10/fs/verity/
Dhash_algs.c3 * fs/verity/hash_algs.c: fs-verity hash algorithms
10 #include <crypto/hash.h>
13 /* The hash algorithms supported by fs-verity */
30 * fsverity_get_hash_alg() - validate and prepare a hash algorithm
32 * @num: the hash algorithm number
34 * Get the struct fsverity_hash_alg for the given hash algorithm number, and
35 * ensure it has a hash transform ready to go. The hash transforms are
39 * Return: pointer to the hash alg on success, else an ERR_PTR()
50 fsverity_warn(inode, "Unknown hash algorithm number: %u", num); in fsverity_get_hash_alg()
72 "Missing crypto API support for hash algorithm \"%s\"", in fsverity_get_hash_alg()
[all …]
/Linux-v5.10/net/netfilter/ipset/
DKconfig56 tristate "hash:ip set support"
59 This option adds the hash:ip set type support, by which one
66 tristate "hash:ip,mark set support"
69 This option adds the hash:ip,mark set type support, by which one
75 tristate "hash:ip,port set support"
78 This option adds the hash:ip,port set type support, by which one
84 tristate "hash:ip,port,ip set support"
87 This option adds the hash:ip,port,ip set type support, by which
94 tristate "hash:ip,port,net set support"
97 This option adds the hash:ip,port,net set type support, by which
[all …]
/Linux-v5.10/drivers/crypto/ux500/hash/
Dhash_alg.h22 /* Power on Reset values HASH registers */
151 * struct hash_register - Contains all registers in ux500 hash hardware.
152 * @cr: HASH control register (0x000).
153 * @din: HASH data input register (0x004).
154 * @str: HASH start register (0x008).
155 * @hx: HASH digest register 0..7 (0x00c-0x01C).
161 * @csfull: HASH context full register (0x0F8).
162 * @csdatain: HASH context swap data input register (0x0FC).
163 * @csrx: HASH context swap register 0..51 (0x100-0x1CC).
165 * @periphid0: HASH peripheral identification register 0 (0xFE0).
[all …]
/Linux-v5.10/drivers/gpu/drm/vboxvideo/
Dvbox_hgsmi.c11 /* One-at-a-Time Hash from https://www.burtleburtle.net/bob/hash/doobs.html */
12 static u32 hgsmi_hash_process(u32 hash, const u8 *data, int size) in hgsmi_hash_process() argument
15 hash += *data++; in hgsmi_hash_process()
16 hash += (hash << 10); in hgsmi_hash_process()
17 hash ^= (hash >> 6); in hgsmi_hash_process()
20 return hash; in hgsmi_hash_process()
23 static u32 hgsmi_hash_end(u32 hash) in hgsmi_hash_end() argument
25 hash += (hash << 3); in hgsmi_hash_end()
26 hash ^= (hash >> 11); in hgsmi_hash_end()
27 hash += (hash << 15); in hgsmi_hash_end()
[all …]
/Linux-v5.10/certs/
Dblacklist.c2 /* System hash blacklist.
24 * hex digits. The hash is kept in the description.
51 * The hash to be blacklisted is expected to be in the description. There will
80 * mark_hash_blacklisted - Add a hash to the system blacklist
81 * @hash - The hash as a hex string with a type prefix (eg. "tbs:23aa429783")
83 int mark_hash_blacklisted(const char *hash) in mark_hash_blacklisted() argument
89 hash, in mark_hash_blacklisted()
97 pr_err("Problem blacklisting hash (%ld)\n", PTR_ERR(key)); in mark_hash_blacklisted()
104 * is_hash_blacklisted - Determine if a hash is blacklisted
105 * @hash: The hash to be checked as a binary blob
[all …]
/Linux-v5.10/security/selinux/ss/
Dhashtab.h3 * A hash table (hashtab) maintains associations between
6 * functions for hash computation and key comparison are
21 u32 (*hash)(const void *key); /* hash function */ member
33 struct hashtab_node **htable; /* hash table */
34 u32 size; /* number of slots in hash table */
35 u32 nel; /* number of elements in hash table */
44 * Initializes a new hash table with the specified characteristics.
54 * Inserts the specified (key, datum) pair into the specified hash table.
72 hvalue = key_params.hash(key) & (h->size - 1); in hashtab_insert()
91 * Searches for the entry with the specified key in the hash table.
[all …]
/Linux-v5.10/fs/ext4/
Dhash.c3 * linux/fs/ext4/hash.c
102 /* The old legacy hash */
105 __u32 hash, hash0 = 0x12a3fe2d, hash1 = 0x37abe8f9; in dx_hack_hash_unsigned() local
109 hash = hash1 + (hash0 ^ (((int) *ucp++) * 7152373)); in dx_hack_hash_unsigned()
111 if (hash & 0x80000000) in dx_hack_hash_unsigned()
112 hash -= 0x7fffffff; in dx_hack_hash_unsigned()
114 hash0 = hash; in dx_hack_hash_unsigned()
121 __u32 hash, hash0 = 0x12a3fe2d, hash1 = 0x37abe8f9; in dx_hack_hash_signed() local
125 hash = hash1 + (hash0 ^ (((int) *scp++) * 7152373)); in dx_hack_hash_signed()
127 if (hash & 0x80000000) in dx_hack_hash_signed()
[all …]
/Linux-v5.10/security/integrity/ima/
Dima_crypto.c10 * Calculates md5/sha1 file hash, template hash, boot-aggreate hash
21 #include <crypto/hash.h>
86 pr_info("Allocated hash algorithm: %s\n", in ima_init_ima_crypto()
329 struct ima_digest_data *hash, in ima_calc_file_hash_atfm() argument
340 hash->length = crypto_ahash_digestsize(tfm); in ima_calc_file_hash_atfm()
431 ahash_request_set_crypt(req, NULL, hash->digest, 0); in ima_calc_file_hash_atfm()
439 static int ima_calc_file_ahash(struct file *file, struct ima_digest_data *hash) in ima_calc_file_ahash() argument
444 tfm = ima_alloc_atfm(hash->algo); in ima_calc_file_ahash()
448 rc = ima_calc_file_hash_atfm(file, hash, tfm); in ima_calc_file_ahash()
456 struct ima_digest_data *hash, in ima_calc_file_hash_tfm() argument
[all …]
/Linux-v5.10/fs/ubifs/
Dauth.c14 #include <crypto/hash.h>
23 * ubifs_node_calc_hash - calculate the hash of a UBIFS node
25 * @node: the node to calculate a hash for
26 * @hash: the returned hash
31 u8 *hash) in __ubifs_node_calc_hash() argument
36 hash); in __ubifs_node_calc_hash()
40 * ubifs_hash_calc_hmac - calculate a HMAC from a hash
42 * @hash: the node to calculate a HMAC for
47 static int ubifs_hash_calc_hmac(const struct ubifs_info *c, const u8 *hash, in ubifs_hash_calc_hmac() argument
50 return crypto_shash_tfm_digest(c->hmac_tfm, hash, c->hash_len, hmac); in ubifs_hash_calc_hmac()
[all …]
/Linux-v5.10/security/apparmor/
Dcrypto.c14 #include <crypto/hash.h>
31 char *hash = NULL; in aa_calc_hash() local
37 hash = kzalloc(apparmor_hash_size, GFP_KERNEL); in aa_calc_hash()
38 if (!hash) in aa_calc_hash()
49 error = crypto_shash_final(desc, hash); in aa_calc_hash()
53 return hash; in aa_calc_hash()
56 kfree(hash); in aa_calc_hash()
74 profile->hash = kzalloc(apparmor_hash_size, GFP_KERNEL); in aa_calc_profile_hash()
75 if (!profile->hash) in aa_calc_profile_hash()
89 error = crypto_shash_final(desc, profile->hash); in aa_calc_profile_hash()
[all …]
/Linux-v5.10/drivers/net/ethernet/freescale/fman/
Dfman_mac.h74 /* HASH defines */
224 static inline void free_hash_table(struct eth_hash_t *hash) in free_hash_table() argument
229 if (hash) { in free_hash_table()
230 if (hash->lsts) { in free_hash_table()
231 for (i = 0; i < hash->size; i++) { in free_hash_table()
233 dequeue_addr_from_hash_entry(&hash->lsts[i]); in free_hash_table()
237 dequeue_addr_from_hash_entry(&hash-> in free_hash_table()
242 kfree(hash->lsts); in free_hash_table()
245 kfree(hash); in free_hash_table()
252 struct eth_hash_t *hash; in alloc_hash_table() local
[all …]
/Linux-v5.10/Documentation/devicetree/bindings/crypto/
Dimg-hash.txt1 Imagination Technologies hardware hash accelerator
3 The hash accelerator provides hardware hashing acceleration for
8 - compatible : "img,hash-accelerator"
14 - clock-names : "sys" Used to clock the hash block registers
15 "hash" Used to clock data through the accelerator
19 hash: hash@18149600 {
20 compatible = "img,hash-accelerator";
26 clock-names = "sys", "hash";
/Linux-v5.10/Documentation/crypto/
Dapi-digest.rst4 .. kernel-doc:: include/crypto/hash.h
7 .. kernel-doc:: include/crypto/hash.h
13 .. kernel-doc:: include/crypto/hash.h
16 .. kernel-doc:: include/crypto/hash.h
19 Asynchronous Hash Request Handle
22 .. kernel-doc:: include/crypto/hash.h
23 :doc: Asynchronous Hash Request Handle
25 .. kernel-doc:: include/crypto/hash.h
31 .. kernel-doc:: include/crypto/hash.h
34 .. kernel-doc:: include/crypto/hash.h
/Linux-v5.10/scripts/
Dget_dvb_firmware52 my $hash = "53970ec17a538945a6d8cb608a7b3899";
60 verify("$tmpdir/software/OEM/HE/App/boot/SC_MAIN.MC", $hash);
70 my $hash = "237938d53a7f834c05c42b894ca68ac3";
80 verify("$tmpdir/ZEnglish/sc_main.mc", $hash);
89 my $hash = "2105fd5bf37842fbcdfa4bfd58f3594a";
98 verify("$tmpdir/fwtmp", $hash);
107 my $hash = "6a7e1e2f2644b162ff0502367553c72d";
116 verify("$tmpdir/fwtmp", $hash);
125 my $hash = "1ea24dee4eea8fe971686981f34fd2e0";
134 verify("$tmpdir/fwtmp", $hash);
[all …]
/Linux-v5.10/drivers/net/wireless/broadcom/brcm80211/brcmfmac/
Dflowring.c62 struct brcmf_flowring_hash *hash; in brcmf_flowring_lookup() local
85 hash = flow->hash; in brcmf_flowring_lookup()
87 if ((sta || (memcmp(hash[hash_idx].mac, mac, ETH_ALEN) == 0)) && in brcmf_flowring_lookup()
88 (hash[hash_idx].fifo == fifo) && in brcmf_flowring_lookup()
89 (hash[hash_idx].ifidx == ifidx)) { in brcmf_flowring_lookup()
97 return hash[hash_idx].flowid; in brcmf_flowring_lookup()
107 struct brcmf_flowring_hash *hash; in brcmf_flowring_create() local
130 hash = flow->hash; in brcmf_flowring_create()
132 if ((hash[hash_idx].ifidx == BRCMF_FLOWRING_INVALID_IFIDX) && in brcmf_flowring_create()
133 (is_zero_ether_addr(hash[hash_idx].mac))) { in brcmf_flowring_create()
[all …]
/Linux-v5.10/net/sched/
Dcls_tcindex.c26 #define PERFECT_HASH_THRESHOLD 64 /* use perfect hash if not bigger */
48 struct tcindex_filter_result *perfect; /* perfect hash; NULL if none */
49 struct tcindex_filter __rcu **h; /* imperfect hash; */
53 u32 hash; /* hash table size; 0 if undefined */ member
56 refcount_t refcnt; /* a temporary refcnt for perfect hash */
90 fp = &p->h[key % p->hash]; in tcindex_lookup()
152 p->hash = DEFAULT_HASH_SIZE; in tcindex_init()
212 for (i = 0; i < p->hash; i++) { in tcindex_delete()
260 return p->hash > (p->mask >> p->shift); in valid_perfect_hash()
297 for (i = 0; i < cp->hash; i++) in tcindex_free_perfect_hash()
[all …]

12345678910>>...72