On Wed, Oct 21, 2015 at 05:54:13PM +0800, mablexidana wrote:
> hi:
>     We test some lpm cases and find some bugs, below is how to fix it. thanks 
> :)

Hi,

thanks for the patch. Could you perhaps provide a description of how to 
reproduce
the bug (or bugs you are fixing), so that we can reproduce them and verify the
fix. (A unit test added to the existing lpm unit tests for this would be the 
best solution.)
For the patch itself, the commit message should also describe the bug, and
how the patch fixes it. It's also good to include a one-line "Fixes:" line
in the comment - generated by using the git alias "fixline" added as:
        fixline = log -1 --abbrev=12 --format='Fixes: %h (\"%s\")'

Regards,
/Bruce

> ---
>  lib/librte_lpm/rte_lpm.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> 
> diff --git a/lib/librte_lpm/rte_lpm.c b/lib/librte_lpm/rte_lpm.c
> index 163ba3c..b5199ff 100644
> --- a/lib/librte_lpm/rte_lpm.c
> +++ b/lib/librte_lpm/rte_lpm.c
> @@ -735,7 +735,7 @@ delete_depth_small(struct rte_lpm *lpm, uint32_t 
> ip_masked,
>                                         lpm->tbl24[i].depth <= depth ) {
>                                 lpm->tbl24[i].valid = INVALID;
>                         }
> -                       else {
> +                       else if (lpm->tbl24[i].ext_entry == 1){
>                                 /*
>                                  * If TBL24 entry is extended, then there has
>                                  * to be a rule with depth >= 25 in the
> @@ -770,6 +770,7 @@ delete_depth_small(struct rte_lpm *lpm, uint32_t 
> ip_masked,
> 
> 
>                 struct rte_lpm_tbl8_entry new_tbl8_entry = {
>                         .valid = VALID,
> +                       .valid_group = VALID,
>                         .depth = sub_rule_depth,
>                         .next_hop = lpm->rules_tbl
>                         [sub_rule_index].next_hop,
> @@ -781,7 +782,7 @@ delete_depth_small(struct rte_lpm *lpm, uint32_t 
> ip_masked,
>                                         lpm->tbl24[i].depth <= depth ) {
>                                 lpm->tbl24[i] = new_tbl24_entry;
>                         }
> -                       else {
> +                       else  if (lpm->tbl24[i].ext_entry == 1) {
>                                 /*
>                                  * If TBL24 entry is extended, then there has
>                                  * to be a rule with depth >= 25 in the
> --
> 1.8.5.2 (Apple Git-48)

Reply via email to