[v2] lib/hash: Set the maximum reclamation size to user provided value

Message ID 20240513100031.1156529-1-aomeryamac@gmail.com (mailing list archive)
State Superseded
Delegated to: Thomas Monjalon
Headers
Series [v2] lib/hash: Set the maximum reclamation size to user provided value |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-compile-amd64-testing success Testing PASS
ci/github-robot: build success github build: passed
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-sample-apps-testing success Testing PASS
ci/intel-Functional success Functional PASS
ci/iol-unit-amd64-testing success Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-unit-arm64-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-compile-arm64-testing success Testing PASS

Commit Message

Abdullah Ömer Yamaç May 13, 2024, 10 a.m. UTC
  In the previous implementation, the maximum reclamation size was set
to RTE_HASH_RCU_DQ_RECLAIM_MAX and it was not configurable. This patch
uses the configuration argument to set the maximum reclamation size.

Fixes: 769b2de7fb52 ("hash: implement RCU resources reclamation")
Cc: dharmik.thakkar@arm.com
Cc: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Cc: Yipeng Wang <yipeng1.wang@intel.com>
Cc: Sameh Gobriel <sameh.gobriel@intel.com>
Cc: Bruce Richardson <bruce.richardson@intel.com>
Cc: Vladimir Medvedkin <vladimir.medvedkin@intel.com>

Signed-off-by: Abdullah Ömer Yamaç <aomeryamac@gmail.com>
---
 lib/hash/rte_cuckoo_hash.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Honnappa Nagarahalli May 13, 2024, 2:34 p.m. UTC | #1
Hi Abdullah,
	I do not see the changes I suggested in this version.

> On May 13, 2024, at 5:00 AM, Abdullah Ömer Yamaç <aomeryamac@gmail.com> wrote:
> 
> In the previous implementation, the maximum reclamation size was set
> to RTE_HASH_RCU_DQ_RECLAIM_MAX and it was not configurable. This patch
> uses the configuration argument to set the maximum reclamation size.
> 
> Fixes: 769b2de7fb52 ("hash: implement RCU resources reclamation")
> Cc: dharmik.thakkar@arm.com
> Cc: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> Cc: Yipeng Wang <yipeng1.wang@intel.com>
> Cc: Sameh Gobriel <sameh.gobriel@intel.com>
> Cc: Bruce Richardson <bruce.richardson@intel.com>
> Cc: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
> 
> Signed-off-by: Abdullah Ömer Yamaç <aomeryamac@gmail.com>
> ---
> lib/hash/rte_cuckoo_hash.c | 1 +
> 1 file changed, 1 insertion(+)
> 
> diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c
> index 9cf94645f6..f7f0fdfd21 100644
> --- a/lib/hash/rte_cuckoo_hash.c
> +++ b/lib/hash/rte_cuckoo_hash.c
> @@ -1557,6 +1557,7 @@ rte_hash_rcu_qsbr_add(struct rte_hash *h, struct rte_hash_rcu_config *cfg)
> if (params.size == 0)
> params.size = total_entries;
> params.trigger_reclaim_limit = cfg->trigger_reclaim_limit;
> + params.max_reclaim_size = cfg->max_reclaim_size;
> if (params.max_reclaim_size == 0)
> params.max_reclaim_size = RTE_HASH_RCU_DQ_RECLAIM_MAX;
> params.esize = sizeof(struct __rte_hash_rcu_dq_entry);
> -- 
> 2.34.1
>
  
Abdullah Ömer Yamaç May 13, 2024, 3:22 p.m. UTC | #2
Hello,
I saw two comments, and the first one
" Please add:
stable@dpdk.org to the Cc list" then I added stable@dpdk.org to Cc. Would
you like me to add it to the commit?

Second one :
“Set the maximum reclamation size to user provided value”  I set this
comment to the header. I thought it was more meaningful in the header. If
you want also, I can insert it in the description part.

Do I miss something else?


On Mon, May 13, 2024 at 5:34 PM Honnappa Nagarahalli <
Honnappa.Nagarahalli@arm.com> wrote:

> Hi Abdullah,
>         I do not see the changes I suggested in this version.
>
> > On May 13, 2024, at 5:00 AM, Abdullah Ömer Yamaç <aomeryamac@gmail.com>
> wrote:
> >
> > In the previous implementation, the maximum reclamation size was set
> > to RTE_HASH_RCU_DQ_RECLAIM_MAX and it was not configurable. This patch
> > uses the configuration argument to set the maximum reclamation size.
> >
> > Fixes: 769b2de7fb52 ("hash: implement RCU resources reclamation")
> > Cc: dharmik.thakkar@arm.com
> > Cc: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> > Cc: Yipeng Wang <yipeng1.wang@intel.com>
> > Cc: Sameh Gobriel <sameh.gobriel@intel.com>
> > Cc: Bruce Richardson <bruce.richardson@intel.com>
> > Cc: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
> >
> > Signed-off-by: Abdullah Ömer Yamaç <aomeryamac@gmail.com>
> > ---
> > lib/hash/rte_cuckoo_hash.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c
> > index 9cf94645f6..f7f0fdfd21 100644
> > --- a/lib/hash/rte_cuckoo_hash.c
> > +++ b/lib/hash/rte_cuckoo_hash.c
> > @@ -1557,6 +1557,7 @@ rte_hash_rcu_qsbr_add(struct rte_hash *h, struct
> rte_hash_rcu_config *cfg)
> > if (params.size == 0)
> > params.size = total_entries;
> > params.trigger_reclaim_limit = cfg->trigger_reclaim_limit;
> > + params.max_reclaim_size = cfg->max_reclaim_size;
> > if (params.max_reclaim_size == 0)
> > params.max_reclaim_size = RTE_HASH_RCU_DQ_RECLAIM_MAX;
> > params.esize = sizeof(struct __rte_hash_rcu_dq_entry);
> > --
> > 2.34.1
> >
>
>
  
Honnappa Nagarahalli May 13, 2024, 4:17 p.m. UTC | #3
> On May 13, 2024, at 10:22 AM, Abdullah Ömer Yamaç <aomeryamac@gmail.com> wrote:
> 
> Hello,
> I saw two comments, and the first one 
> " Please add:
> stable@dpdk.org to the Cc list" then I added stable@dpdk.org to Cc. Would you like me to add it to the commit?
I thought it needs to be added to the commit message as per contributing guidelines [1].

[1] https://doc.dpdk.org/guides/contributing/patches.html#patch-for-stable-releases
> 
> Second one :
> “Set the maximum reclamation size to user provided value”  I set this comment to the header. I thought it was more meaningful in the header. If you want also, I can insert it in the description part.
I meant that we should simplify the long commit message.

> 
> Do I miss something else?
> 
> 
> On Mon, May 13, 2024 at 5:34 PM Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com> wrote:
> Hi Abdullah,
>         I do not see the changes I suggested in this version.
> 
> > On May 13, 2024, at 5:00 AM, Abdullah Ömer Yamaç <aomeryamac@gmail.com> wrote:
> > 
> > In the previous implementation, the maximum reclamation size was set
> > to RTE_HASH_RCU_DQ_RECLAIM_MAX and it was not configurable. This patch
> > uses the configuration argument to set the maximum reclamation size.
> > 
> > Fixes: 769b2de7fb52 ("hash: implement RCU resources reclamation")
> > Cc: dharmik.thakkar@arm.com
> > Cc: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> > Cc: Yipeng Wang <yipeng1.wang@intel.com>
> > Cc: Sameh Gobriel <sameh.gobriel@intel.com>
> > Cc: Bruce Richardson <bruce.richardson@intel.com>
> > Cc: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
> > 
> > Signed-off-by: Abdullah Ömer Yamaç <aomeryamac@gmail.com>
> > ---
> > lib/hash/rte_cuckoo_hash.c | 1 +
> > 1 file changed, 1 insertion(+)
> > 
> > diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c
> > index 9cf94645f6..f7f0fdfd21 100644
> > --- a/lib/hash/rte_cuckoo_hash.c
> > +++ b/lib/hash/rte_cuckoo_hash.c
> > @@ -1557,6 +1557,7 @@ rte_hash_rcu_qsbr_add(struct rte_hash *h, struct rte_hash_rcu_config *cfg)
> > if (params.size == 0)
> > params.size = total_entries;
> > params.trigger_reclaim_limit = cfg->trigger_reclaim_limit;
> > + params.max_reclaim_size = cfg->max_reclaim_size;
> > if (params.max_reclaim_size == 0)
> > params.max_reclaim_size = RTE_HASH_RCU_DQ_RECLAIM_MAX;
> > params.esize = sizeof(struct __rte_hash_rcu_dq_entry);
> > -- 
> > 2.34.1
> > 
>
  

Patch

diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c
index 9cf94645f6..f7f0fdfd21 100644
--- a/lib/hash/rte_cuckoo_hash.c
+++ b/lib/hash/rte_cuckoo_hash.c
@@ -1557,6 +1557,7 @@  rte_hash_rcu_qsbr_add(struct rte_hash *h, struct rte_hash_rcu_config *cfg)
 		if (params.size == 0)
 			params.size = total_entries;
 		params.trigger_reclaim_limit = cfg->trigger_reclaim_limit;
+		params.max_reclaim_size = cfg->max_reclaim_size;
 		if (params.max_reclaim_size == 0)
 			params.max_reclaim_size = RTE_HASH_RCU_DQ_RECLAIM_MAX;
 		params.esize = sizeof(struct __rte_hash_rcu_dq_entry);