DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Sanford, Robert" <rsanford@akamai.com>
To: Zhigang Lu <zlu@ezchip.com>, "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v3 02/12] hash: fix compilation on non-X86 platforms
Date: Tue, 7 Jul 2015 14:52:11 +0000	[thread overview]
Message-ID: <D1C15941.A98C%rsanford@akamai.com> (raw)
In-Reply-To: <1436172698-21749-3-git-send-email-zlu@ezchip.com>

Hi Zhigang,

Can you add this one-line X86 change (below)? When included by C++ code,
'key' needs an explicit type cast.

You may want to put the 'const' keyword in your non-X86 change, too.
--

Thanks,
Robert




diff --git a/lib/librte_hash/rte_jhash.h b/lib/librte_hash/rte_jhash.h
index e230449..49b4ac0 100644
--- a/lib/librte_hash/rte_jhash.h
+++ b/lib/librte_hash/rte_jhash.h
@@ -119,7 +119,7 @@ __rte_jhash_2hashes(const void *key, uint32_t length,
uint32_t *pc,
 	 * If check_align is not set, first case will be used
 	 */
 #if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686) ||
defined(RTE_ARCH_X86_X32)
-	const uint32_t *k = key;
+	const uint32_t *k = (const uint32_t *)key;
 	const uint32_t s = 0;
 #else
 	const uint32_t *k = (uint32_t *)(uintptr_t)key & (uintptr_t)~3);
--






>The "hash: remove duplicated code" change unfortunately broke the
>build for non-X86 platforms.  This patch fixes this breakage.
>
>Change-Id: Ie109d67e681b75b45320fab1bf9de4eb9c9701bf
>Signed-off-by: Zhigang Lu <zlu@ezchip.com>
>---
> lib/librte_hash/rte_jhash.h | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
>diff --git a/lib/librte_hash/rte_jhash.h b/lib/librte_hash/rte_jhash.h
>index e230449..d1b6cf3 100644
>--- a/lib/librte_hash/rte_jhash.h
>+++ b/lib/librte_hash/rte_jhash.h
>@@ -44,6 +44,7 @@
> extern "C" {
> #endif
> 
>+#include <limits.h>
> #include <stdint.h>
> #include <string.h>
> 
>@@ -122,7 +123,7 @@ __rte_jhash_2hashes(const void *key, uint32_t length,
>uint32_t *pc,
> 	const uint32_t *k = key;
> 	const uint32_t s = 0;
> #else
>-	const uint32_t *k = (uint32_t *)(uintptr_t)key & (uintptr_t)~3);
>+	const uint32_t *k = (uint32_t *)((uintptr_t)key & (uintptr_t)~3);
> 	const uint32_t s = ((uintptr_t)key & 3) * CHAR_BIT;
> #endif
> 	if (!check_align || s == 0) {
>-- 
>2.1.2
>

  parent reply	other threads:[~2015-07-07 14:52 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-06  8:51 [dpdk-dev] [PATCH v3 00/12] Introducing the TILE-Gx platform Zhigang Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 01/12] test: limit x86 cpuflags checks to x86 builds Zhigang Lu
2015-07-06 10:53   ` Bruce Richardson
2015-07-07  8:21     ` Tony Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 02/12] hash: fix compilation on non-X86 platforms Zhigang Lu
2015-07-06 11:15   ` Bruce Richardson
2015-07-07  8:24     ` Tony Lu
2015-07-07 14:52   ` Sanford, Robert [this message]
2015-07-08  8:21     ` Tony Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 03/12] hash: check SSE flags only on x86 builds Zhigang Lu
2015-07-06 15:32   ` Bruce Richardson
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 04/12] eal: allow empty compile time flags Zhigang Lu
2015-07-06 15:33   ` Bruce Richardson
2015-07-09  0:46   ` Thomas Monjalon
2015-07-09  4:20     ` Tony Lu
2015-07-09  6:49       ` damu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 05/12] config: remove RTE_LIBNAME definition Zhigang Lu
2015-07-06 15:34   ` Bruce Richardson
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 06/12] memzone: refactor rte_memzone_reserve() variants Zhigang Lu
2015-07-09  0:51   ` Thomas Monjalon
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 07/12] memzone: allow multiple pagesizes to be requested Zhigang Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 08/12] mempool: allow config override on element alignment Zhigang Lu
2015-07-06 15:37   ` Bruce Richardson
2015-07-07  9:15     ` Tony Lu
2015-07-07 10:10       ` Bruce Richardson
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 09/12] tile: add page sizes for TILE-Gx/Mx platforms Zhigang Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 10/12] tile: initial TILE-Gx support Zhigang Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 11/12] tile: Add TILE-Gx mPIPE poll mode driver Zhigang Lu
2015-07-06  8:51 ` [dpdk-dev] [PATCH v3 12/12] maintainers: claim responsibility for TILE-Gx platform Zhigang Lu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=D1C15941.A98C%rsanford@akamai.com \
    --to=rsanford@akamai.com \
    --cc=dev@dpdk.org \
    --cc=zlu@ezchip.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).