2023-07-17 02:32:03

by Minjie Du

[permalink] [raw]
Subject: [PATCH net v4] net: lan966x: fix parameter check in two functions

Make IS_ERR_OR_NULL() judge the vcap_get_rule() function return.
in lan966x_ptp_add_trap() and lan966x_ptp_del_trap().

Fixes: 72df3489fb10 ("net: lan966x: Add ptp trap rules")
Signed-off-by: Minjie Du <[email protected]>
Reviewed-by: Horatiu Vultur <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
---
V2 -> V3: add 'Reviewed-by: Simon Horman' tag.
V2 -> V3: set the target tree in the subject and add 'Reviewed-by:' tag.
V1 -> V2: add Fixes tag.
V1: fix parameter check in two functions.
---
drivers/net/ethernet/microchip/lan966x/lan966x_ptp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/microchip/lan966x/lan966x_ptp.c b/drivers/net/ethernet/microchip/lan966x/lan966x_ptp.c
index 266a21a2d..59dd14247 100644
--- a/drivers/net/ethernet/microchip/lan966x/lan966x_ptp.c
+++ b/drivers/net/ethernet/microchip/lan966x/lan966x_ptp.c
@@ -59,7 +59,7 @@ static int lan966x_ptp_add_trap(struct lan966x_port *port,
int err;

vrule = vcap_get_rule(lan966x->vcap_ctrl, rule_id);
- if (vrule) {
+ if (!IS_ERR_OR_NULL(vrule)) {
u32 value, mask;

/* Just modify the ingress port mask and exit */
@@ -106,7 +106,7 @@ static int lan966x_ptp_del_trap(struct lan966x_port *port,
int err;

vrule = vcap_get_rule(lan966x->vcap_ctrl, rule_id);
- if (!vrule)
+ if (IS_ERR_OR_NULL(vrule))
return -EEXIST;

vcap_rule_get_key_u32(vrule, VCAP_KF_IF_IGR_PORT_MASK, &value, &mask);
--
2.39.0



2023-07-19 01:11:37

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH net v4] net: lan966x: fix parameter check in two functions

On Mon, 17 Jul 2023 10:22:35 +0800 Minjie Du wrote:
> vrule = vcap_get_rule(lan966x->vcap_ctrl, rule_id);
> - if (vrule) {
> + if (!IS_ERR_OR_NULL(vrule)) {

Please make vcap_get_rule() return an error pointer rather than NULL.
Mixing the two is a common source of errors.
--
pw-bot: cr