* [PATCH net-next 0/2] Fixes for unlocked cls hardware offload API refactoring @ 2019-08-28 16:41 Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 1/2] net: sched: cls_matchall: cleanup flow_action before deallocating Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block Vlad Buslov 0 siblings, 2 replies; 5+ messages in thread From: Vlad Buslov @ 2019-08-28 16:41 UTC (permalink / raw) To: netdev; +Cc: jhs, xiyou.wangcong, jiri, davem, saeedm, idosch, Vlad Buslov Two fixes for my "Refactor cls hardware offload API to support rtnl-independent drivers" series. Vlad Buslov (2): net: sched: cls_matchall: cleanup flow_action before deallocating net/mlx5e: Move local var definition into ifdef block drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 6 ++++-- net/sched/cls_matchall.c | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) -- 2.21.0 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH net-next 1/2] net: sched: cls_matchall: cleanup flow_action before deallocating 2019-08-28 16:41 [PATCH net-next 0/2] Fixes for unlocked cls hardware offload API refactoring Vlad Buslov @ 2019-08-28 16:41 ` Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block Vlad Buslov 1 sibling, 0 replies; 5+ messages in thread From: Vlad Buslov @ 2019-08-28 16:41 UTC (permalink / raw) To: netdev; +Cc: jhs, xiyou.wangcong, jiri, davem, saeedm, idosch, Vlad Buslov Recent rtnl lock removal patch changed flow_action infra to require proper cleanup besides simple memory deallocation. However, matchall classifier was not updated to call tc_cleanup_flow_action(). Add proper cleanup to mall_replace_hw_filter() and mall_reoffload(). Fixes: 5a6ff4b13d59 ("net: sched: take reference to action dev before calling offloads") Reported-by: Ido Schimmel <idosch@mellanox.com> Tested-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Vlad Buslov <vladbu@mellanox.com> --- net/sched/cls_matchall.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/sched/cls_matchall.c b/net/sched/cls_matchall.c index 3266f25011cc..7fc2eb62aa98 100644 --- a/net/sched/cls_matchall.c +++ b/net/sched/cls_matchall.c @@ -111,6 +111,7 @@ static int mall_replace_hw_filter(struct tcf_proto *tp, err = tc_setup_cb_add(block, tp, TC_SETUP_CLSMATCHALL, &cls_mall, skip_sw, &head->flags, &head->in_hw_count, true); + tc_cleanup_flow_action(&cls_mall.rule->action); kfree(cls_mall.rule); if (err) { @@ -313,6 +314,7 @@ static int mall_reoffload(struct tcf_proto *tp, bool add, flow_setup_cb_t *cb, err = tc_setup_cb_reoffload(block, tp, add, cb, TC_SETUP_CLSMATCHALL, &cls_mall, cb_priv, &head->flags, &head->in_hw_count); + tc_cleanup_flow_action(&cls_mall.rule->action); kfree(cls_mall.rule); if (err) -- 2.21.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block 2019-08-28 16:41 [PATCH net-next 0/2] Fixes for unlocked cls hardware offload API refactoring Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 1/2] net: sched: cls_matchall: cleanup flow_action before deallocating Vlad Buslov @ 2019-08-28 16:41 ` Vlad Buslov 2019-08-29 9:29 ` Sergei Shtylyov 1 sibling, 1 reply; 5+ messages in thread From: Vlad Buslov @ 2019-08-28 16:41 UTC (permalink / raw) To: netdev Cc: jhs, xiyou.wangcong, jiri, davem, saeedm, idosch, Vlad Buslov, tanhuazhong New local variable "struct flow_block_offload *f" was added to mlx5e_setup_tc() in recent rtnl lock removal patches. The variable is used in code that is only compiled when CONFIG_MLX5_ESWITCH is enabled. This results compilation warning about unused variable when CONFIG_MLX5_ESWITCH is not set. Move the variable definition into eswitch-specific code block from the begging of mlx5e_setup_tc() function. Fixes: c9f14470d048 ("net: sched: add API for registering unlocked offload block callbacks") Reported-by: tanhuazhong <tanhuazhong@huawei.com> Signed-off-by: Vlad Buslov <vladbu@mellanox.com> --- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c index 8592b98d0e70..c10a1fc8e469 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c @@ -3470,16 +3470,18 @@ static int mlx5e_setup_tc(struct net_device *dev, enum tc_setup_type type, void *type_data) { struct mlx5e_priv *priv = netdev_priv(dev); - struct flow_block_offload *f = type_data; switch (type) { #ifdef CONFIG_MLX5_ESWITCH - case TC_SETUP_BLOCK: + case TC_SETUP_BLOCK: { + struct flow_block_offload *f = type_data; + f->unlocked_driver_cb = true; return flow_block_cb_setup_simple(type_data, &mlx5e_block_cb_list, mlx5e_setup_tc_block_cb, priv, priv, true); + } #endif case TC_SETUP_QDISC_MQPRIO: return mlx5e_setup_tc_mqprio(priv, type_data); -- 2.21.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block 2019-08-28 16:41 ` [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block Vlad Buslov @ 2019-08-29 9:29 ` Sergei Shtylyov 2019-08-29 16:13 ` Vlad Buslov 0 siblings, 1 reply; 5+ messages in thread From: Sergei Shtylyov @ 2019-08-29 9:29 UTC (permalink / raw) To: Vlad Buslov, netdev Cc: jhs, xiyou.wangcong, jiri, davem, saeedm, idosch, tanhuazhong Hello! On 28.08.2019 19:41, Vlad Buslov wrote: > New local variable "struct flow_block_offload *f" was added to > mlx5e_setup_tc() in recent rtnl lock removal patches. The variable is used > in code that is only compiled when CONFIG_MLX5_ESWITCH is enabled. This > results compilation warning about unused variable when CONFIG_MLX5_ESWITCH > is not set. Move the variable definition into eswitch-specific code block > from the begging of mlx5e_setup_tc() function. Beginning? > Fixes: c9f14470d048 ("net: sched: add API for registering unlocked offload block callbacks") > Reported-by: tanhuazhong <tanhuazhong@huawei.com> > Signed-off-by: Vlad Buslov <vladbu@mellanox.com> [...] MBR, Sergei ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block 2019-08-29 9:29 ` Sergei Shtylyov @ 2019-08-29 16:13 ` Vlad Buslov 0 siblings, 0 replies; 5+ messages in thread From: Vlad Buslov @ 2019-08-29 16:13 UTC (permalink / raw) To: Sergei Shtylyov Cc: Vlad Buslov, netdev@vger.kernel.org, jhs@mojatatu.com, xiyou.wangcong@gmail.com, jiri@resnulli.us, davem@davemloft.net, Saeed Mahameed, Ido Schimmel, tanhuazhong On Thu 29 Aug 2019 at 12:29, Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> wrote: > Hello! > > On 28.08.2019 19:41, Vlad Buslov wrote: > >> New local variable "struct flow_block_offload *f" was added to >> mlx5e_setup_tc() in recent rtnl lock removal patches. The variable is used >> in code that is only compiled when CONFIG_MLX5_ESWITCH is enabled. This >> results compilation warning about unused variable when CONFIG_MLX5_ESWITCH >> is not set. Move the variable definition into eswitch-specific code block >> from the begging of mlx5e_setup_tc() function. > > Beginning? Yep. Thanks for spotting it! > >> Fixes: c9f14470d048 ("net: sched: add API for registering unlocked offload block callbacks") >> Reported-by: tanhuazhong <tanhuazhong@huawei.com> >> Signed-off-by: Vlad Buslov <vladbu@mellanox.com> > [...] > > MBR, Sergei ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-08-29 16:14 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-08-28 16:41 [PATCH net-next 0/2] Fixes for unlocked cls hardware offload API refactoring Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 1/2] net: sched: cls_matchall: cleanup flow_action before deallocating Vlad Buslov 2019-08-28 16:41 ` [PATCH net-next 2/2] net/mlx5e: Move local var definition into ifdef block Vlad Buslov 2019-08-29 9:29 ` Sergei Shtylyov 2019-08-29 16:13 ` Vlad Buslov
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).