[dpdk-dev] [PATCH v3 1/3] lpm: fix freeing unused sub-table on rule delete

Dai, Wei wei.dai at intel.com
Wed Aug 3 09:13:55 CEST 2016


This patch is same as patch 15063 which has been acked by Bruce Richardson.
Only title and message body of git log has been revised according to Bruce's
advice.

> -----Original Message-----
> From: Dai, Wei
> Sent: Wednesday, August 3, 2016 3:02 PM
> To: dev at dpdk.org
> Cc: Dai, Wei <wei.dai at intel.com>
> Subject: [PATCH v3 1/3] lpm: fix freeing unused sub-table on rule delete
> 
> When all rules with depth > 24 are deleted in a same sub-table
> (tlb8 group) and only a rule with depth <=24 is left in it, this sub-table (tlb8
> group) should be recycled.
> 
> Fixes: dc81ebbacaeb ("lpm: extend IPv4 next hop field")
> Fixes: af75078fece3 ("first public release")
> 
> Signed-off-by: Wei Dai <wei.dai at intel.com>
> ---
>  lib/librte_lpm/rte_lpm.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/librte_lpm/rte_lpm.c b/lib/librte_lpm/rte_lpm.c index
> 6f65d1c..24fec4b 100644
> --- a/lib/librte_lpm/rte_lpm.c
> +++ b/lib/librte_lpm/rte_lpm.c
> @@ -1533,7 +1533,7 @@ tbl8_recycle_check_v20(struct
> rte_lpm_tbl_entry_v20 *tbl8,
>  		 * and if so check the rest of the entries to verify that they
>  		 * are all of this depth.
>  		 */
> -		if (tbl8[tbl8_group_start].depth < MAX_DEPTH_TBL24) {
> +		if (tbl8[tbl8_group_start].depth <= MAX_DEPTH_TBL24) {
>  			for (i = (tbl8_group_start + 1); i < tbl8_group_end;
>  					i++) {
> 
> @@ -1580,7 +1580,7 @@ tbl8_recycle_check_v1604(struct rte_lpm_tbl_entry
> *tbl8,
>  		 * and if so check the rest of the entries to verify that they
>  		 * are all of this depth.
>  		 */
> -		if (tbl8[tbl8_group_start].depth < MAX_DEPTH_TBL24) {
> +		if (tbl8[tbl8_group_start].depth <= MAX_DEPTH_TBL24) {
>  			for (i = (tbl8_group_start + 1); i < tbl8_group_end;
>  					i++) {
> 
> --
> 2.5.5



More information about the dev mailing list