summaryrefslogtreecommitdiff
path: root/net/can/j1939/bus.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-09-19 16:37:39 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-09-19 16:37:39 +0200
commit362f34fba309536598a02bc0541ccaeae2bc9052 (patch)
tree909959d943cf9f3afe80ba67333359828660e27c /net/can/j1939/bus.c
parente4c42304a8cd3b7d0b9755e80dd6835c20b8e0dc (diff)
parent62dae019823123ce3baa50e680219e2beb9a63a5 (diff)
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/can/j1939/bus.c')
-rw-r--r--net/can/j1939/bus.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/can/j1939/bus.c b/net/can/j1939/bus.c
index 39844f14eed8..797719cb227e 100644
--- a/net/can/j1939/bus.c
+++ b/net/can/j1939/bus.c
@@ -290,8 +290,11 @@ int j1939_local_ecu_get(struct j1939_priv *priv, name_t name, u8 sa)
if (!ecu)
ecu = j1939_ecu_create_locked(priv, name);
err = PTR_ERR_OR_ZERO(ecu);
- if (err)
+ if (err) {
+ if (j1939_address_is_unicast(sa))
+ priv->ents[sa].nusers--;
goto done;
+ }
ecu->nusers++;
/* TODO: do we care if ecu->addr != sa? */