DPDK patches and discussions
 help / color / mirror / Atom feed
From: "De Lara Guarch, Pablo" <pablo.de.lara.guarch@intel.com>
To: Yari Adan Petralanda <yari.adan.petralanda@ericsson.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2] hash: new function to retrieve a key given	its position
Date: Fri, 24 Jun 2016 10:29:47 +0000	[thread overview]
Message-ID: <E115CCD9D858EF4F90C690B0DCB4D8973C968455@IRSMSX108.ger.corp.intel.com> (raw)
In-Reply-To: <5763D81F.9030308@ericsson.com>



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Yari Adan
> Petralanda
> Sent: Friday, June 17, 2016 12:00 PM
> To: dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2] hash: new function to retrieve a key given its
> position
> 
> The function rte_hash_get_key_with_position is added in this patch.
> As the position returned when adding a key is frequently used as an
> offset into an array of user data, this function performs the operation
> of retrieving a key given this offset.
> 
> A possible use case would be to delete a key from the hash table when
> its entry in the array of data has certain value. For instance, the key
> could be a flow 5-tuple, and the value stored in the array a time
> stamp.
> 
> Signed-off-by: Juan Antonio Montesinos
> <juan.antonio.montesinos.delgado@ericsson.com>
> Signed-off-by: Yari Adan Petralanda <yari.adan.petralanda@ericsson.com>
> ---
>  app/test/test_hash.c                 | 42
> ++++++++++++++++++++++++++++++++++++
>  lib/librte_hash/rte_cuckoo_hash.c    | 18 ++++++++++++++++
>  lib/librte_hash/rte_hash.h           | 18 ++++++++++++++++
>  lib/librte_hash/rte_hash_version.map |  7 ++++++
>  4 files changed, 85 insertions(+)
> 
> diff --git a/app/test/test_hash.c b/app/test/test_hash.c
> index 7e41725..d50afae 100644
> --- a/app/test/test_hash.c
> +++ b/app/test/test_hash.c
> @@ -421,6 +421,46 @@ static int test_add_update_delete(void)
>  }
> 
>  /*
> + * Sequence of operations for retrieving a key with its position
> + *
> + *  - create table
> + *  - add key
> + *  - get the key with its position: hit
> + *  - delete key
> + *  - try to get the deleted key: miss
> + *
> + */
> +static int test_hash_get_key_with_position(void)
> +{
> +	struct rte_hash *handle = NULL;
> +	int pos, expectedPos, result;
> +	void *key;
> +
> +	ut_params.name = "hash_get_key_with_position";

The name is too long and causes rte_hash_create() to fail (therefore, test does not work),
as internal ring name results in more than 32 characters.
Could you rename it to something shorter? hash_get_key_with_pos?

> +	handle = rte_hash_create(&ut_params);
> +	RETURN_IF_ERROR(handle == NULL, "hash creation failed");
> +
> +	pos = rte_hash_add_key(handle, &keys[0]);
> +	print_key_info("Add", &keys[0], pos);
> +	RETURN_IF_ERROR(pos < 0, "failed to add key (pos0=%d)", pos);
> +	expectedPos = pos;

[...]

Rest of the patch looks good to me.

      reply	other threads:[~2016-06-24 10:29 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-17 10:59 Yari Adan Petralanda
2016-06-24 10:29 ` De Lara Guarch, Pablo [this message]

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=E115CCD9D858EF4F90C690B0DCB4D8973C968455@IRSMSX108.ger.corp.intel.com \
    --to=pablo.de.lara.guarch@intel.com \
    --cc=dev@dpdk.org \
    --cc=yari.adan.petralanda@ericsson.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).