hash: document jhash boundary behavior

Due to the uint32_t accesses in the hash computation, keys that aren't
aligned to a uint32_t boundary or multiples of uint32_t in length, may
see accesses beyond the end of the key.  This may cross a page boundary.

Signed-off-by: Chas Williams <chas3@att.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: John McNamara <john.mcnamara@intel.com>
This commit is contained in:
Chas Williams 2017-09-18 15:47:40 -04:00 committed by Thomas Monjalon
parent b081c1dd2e
commit 0c57f40e66

View File

@ -290,7 +290,10 @@ rte_jhash_32b_2hashes(const uint32_t *k, uint32_t length, uint32_t *pc, uint32_t
/**
* The most generic version, hashes an arbitrary sequence
* of bytes. No alignment or length assumptions are made about
* the input key.
* the input key. For keys not aligned to four byte boundaries
* or a multiple of four bytes in length, the memory region
* just after may be read (but not used in the computation).
* This may cross a page boundary.
*
* @param key
* Key to calculate hash of.