Alternativa de arch_fast_hash no kernel Linux v3.19 e superior

Alternativa de arch_fast_hash no kernel Linux v3.19 e superior

Para encontrar o valor hash de um determinado buffer, usei arch_fast_hasha função presente no kernel Linux v3.16 declarada include/linux/hash.he definida em linux/lib/hash.c.

Mas no kernel Linux v3.19, essa função desapareceu. Poucas funções e macros novas estão disponíveis, mas sem a documentação adequada.

Alguém pode me ajudar com uma técnica de hash adequada ou qual é a alternativa arch_fast_hashna v3.19.

E também existe alguma alternativa mais rápida ao hash?

Ligações

include/linux/hash.h no kernel Linux v3.16
include/linux/hash.h no kernel Linux v3.19

Responder1

Tentar:

#include <linux/jhash.h>

e use esta função:

/* 
* jhash - hash an arbitrary key
* @k: sequence of bytes as key
* @length: the length of the key
* @initval: the previous hash, or an arbitray value
* 
* The generic version, hashes an arbitrary sequence of bytes. 
* No alignment or length assumptions are made about the input key.
* Returns the hash value of the key. The result depends on endianness.
*/

u32 jhash(const void *key, u32 length, u32 initval);

informação relacionada