[spp] [PATCH] spp_vf: fix initializing bug of forwarder
Yasufumi Ogawa
ogawa.yasufumi at lab.ntt.co.jp
Tue Aug 7 06:13:27 CEST 2018
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",
>
More information about the spp
mailing list