DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior
@ 2017-09-18 19:47 Chas Williams
  2017-09-19 10:07 ` Luca Boccassi
  2017-09-19 13:33 ` Mcnamara, John
  0 siblings, 2 replies; 4+ messages in thread
From: Chas Williams @ 2017-09-18 19:47 UTC (permalink / raw)
  To: dev; +Cc: bruce.richardson, pablo.de.lara.guarch, Chas Williams

From: Chas Williams <chas3@att.com>

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>
---
 lib/librte_hash/rte_jhash.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/librte_hash/rte_jhash.h b/lib/librte_hash/rte_jhash.h
index 207478c..3eca138 100644
--- a/lib/librte_hash/rte_jhash.h
+++ b/lib/librte_hash/rte_jhash.h
@@ -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.
-- 
2.9.5

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior
  2017-09-18 19:47 [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior Chas Williams
@ 2017-09-19 10:07 ` Luca Boccassi
  2017-09-19 13:33 ` Mcnamara, John
  1 sibling, 0 replies; 4+ messages in thread
From: Luca Boccassi @ 2017-09-19 10:07 UTC (permalink / raw)
  To: Chas Williams, dev; +Cc: bruce.richardson, pablo.de.lara.guarch, Chas Williams

On Mon, 2017-09-18 at 15:47 -0400, Chas Williams wrote:
> From: Chas Williams <chas3@att.com>
> 
> 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>
> ---
>  lib/librte_hash/rte_jhash.h | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/librte_hash/rte_jhash.h
> b/lib/librte_hash/rte_jhash.h
> index 207478c..3eca138 100644
> --- a/lib/librte_hash/rte_jhash.h
> +++ b/lib/librte_hash/rte_jhash.h
> @@ -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.

Acked-by: Luca Boccassi <bluca@debian.org>

-- 
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior
  2017-09-18 19:47 [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior Chas Williams
  2017-09-19 10:07 ` Luca Boccassi
@ 2017-09-19 13:33 ` Mcnamara, John
  2017-10-05 21:37   ` Thomas Monjalon
  1 sibling, 1 reply; 4+ messages in thread
From: Mcnamara, John @ 2017-09-19 13:33 UTC (permalink / raw)
  To: Chas Williams, dev
  Cc: Richardson, Bruce, De Lara Guarch, Pablo, Chas Williams



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Chas Williams
> Sent: Monday, September 18, 2017 8:48 PM
> To: dev@dpdk.org
> Cc: Richardson, Bruce <bruce.richardson@intel.com>; De Lara Guarch, Pablo
> <pablo.de.lara.guarch@intel.com>; Chas Williams <chas3@att.com>
> Subject: [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior
> 
> From: Chas Williams <chas3@att.com>
> 
> 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: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior
  2017-09-19 13:33 ` Mcnamara, John
@ 2017-10-05 21:37   ` Thomas Monjalon
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Monjalon @ 2017-10-05 21:37 UTC (permalink / raw)
  To: Chas Williams
  Cc: dev, Mcnamara, John, Chas Williams, Richardson, Bruce,
	De Lara Guarch, Pablo

> > 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: John McNamara <john.mcnamara@intel.com>

Applied, thanks

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-10-05 21:37 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-18 19:47 [dpdk-dev] [PATCH] hash: document rte_jhash() boundary behavior Chas Williams
2017-09-19 10:07 ` Luca Boccassi
2017-09-19 13:33 ` Mcnamara, John
2017-10-05 21:37   ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).