[spp] [spp 03180] Re: [PATCH] spp_vf: fix initializing bug of forwarder

Hideyuki Yamashita yamashita.hideyuki at po.ntt-tx.co.jp
Wed Aug 8 07:34:50 CEST 2018


Hello Yasufumi-san,

Thanks for your comment again.
OK, then I will follow your suggestion and remove the function.
I am preparing revised version patch now, so please wait a while.

Thanks.

BR,
Hideyuki Yamashita

> On 2018/08/07 15:31, Hideyuki Yamashita wrote:
> > Hello Yasufumi-san,
> >
> > Thanks for your comments.
> > About your first point, I agree that there is only one point which calls this function. But
> > I still believe it is good to keep this as a function to keep
> > readability of calling side function.
> I do not think this function is more understandable than doing memset. It is just one line and no complexity. If you have any other reasons for, I think it it better to keep the code by removing the meaningless function.
> 
> > So, I will change function name from clear_forward_info() to clear_forward_path().
> >
> > What do you think?
> >
> > BR,
> > Hideyuki Yamashita
> >
> >> On 2018/08/02 17:31, x-fn-spp at sl.ntt-tx.co.jp wrote:
> >>> From: Hideyuki Yamashita <yamashita.hideyuki at po.ntt-tx.co.jp>
> >>>
> >>> clear_forward_info() always initializes path[0] of g_forward_info[id].
> >>> It is a bug and causes stopping forwarding accidentally if path[0] is
> >>> referenced by spp_forward().
> >>>
> >>> This patch changes initializing as path[info->upd_index] instead of 0.
> >>> It also includes refactoring to be simple by using local vars.
> >> Hideyuki,
> >>
> >> I do not know why claer_forward_info() is requierd because it is called only one time and simply just doing memset(). I think it is not needed to be a function without called from several points. In addition, the name of function is not so good. It does not clear 'forward_info' but 'forward_path'. I think clear_forward_path() is appropriate if you want to make it as a function.
> >>
> >> Thanks,
> >> Yasufumi
> >>>
> >>> Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki at po.ntt-tx.co.jp>
> >>> Signed-off-by: Naoki Takada <takada.naoki at lab.ntt.co.jp>
> >>> ---
> >>>    src/vf/spp_forward.c | 6 +++---
> >>>    1 file changed, 3 insertions(+), 3 deletions(-)
> >>>
> >>> diff --git a/src/vf/spp_forward.c b/src/vf/spp_forward.c
> >>> index 0a43608..ee1254c 100644
> >>> --- a/src/vf/spp_forward.c
> >>> +++ b/src/vf/spp_forward.c
> >>> @@ -51,9 +51,9 @@ spp_forward_init(void)
> >>>   >   /* Clear info for one element. */
> >>>    static void
> >>> -clear_forward_info(int id)
> >>> +clear_forward_info(struct forward_path *path)
> >>>    {
> >>> -	memset(&g_forward_info[id].path, 0x00, sizeof(struct forward_path));
> >>> +	memset(path, 0x00, sizeof(struct forward_path));
> >>>    }
> >>>   >   /* Update forward info */
> >>> @@ -84,7 +84,7 @@ spp_forward_update(struct spp_component_info *component)
> >>>    		return -1;
> >>>    	}
> >>>   > -	clear_forward_info(component->component_id);
> >>> +	clear_forward_info(path);
> >>>   >   	RTE_LOG(INFO, FORWARD,
> >>>    			"Component[%d] Start update component. (name = %s, type = %d)\n",
> >>>
> >>
> >
> >
> >
> > 
> 
> -- Yasufumi Ogawa
> NTT Network Service Systems Labs
> 




More information about the spp mailing list