aboutsummaryrefslogtreecommitdiff
path: root/net/can
diff options
context:
space:
mode:
authorJakub Kicinski2022-10-27 15:37:56 -0700
committerJakub Kicinski2022-10-27 16:56:36 -0700
commit31f1aa4f740fc591450777f4ff94d6e062b6f632 (patch)
treeb6bfe700d8338b3c88f4d8413b624d0d5fd78e4a /net/can
parent12d6c1d3a2ad0c199ec57c201cdc71e8e157a232 (diff)
parent23758867219c8d84c8363316e6dd2f9fd7ae3049 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c 2871edb32f46 ("can: kvaser_usb: Fix possible completions during init_completion") abb8670938b2 ("can: kvaser_usb_leaf: Ignore stale bus-off after start") 8d21f5927ae6 ("can: kvaser_usb_leaf: Fix improved state not being reported") Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/can')
-rw-r--r--net/can/j1939/transport.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/can/j1939/transport.c b/net/can/j1939/transport.c
index 6ec48a41988c..f26f4cfa9e63 100644
--- a/net/can/j1939/transport.c
+++ b/net/can/j1939/transport.c
@@ -342,10 +342,12 @@ static void j1939_session_skb_drop_old(struct j1939_session *session)
__skb_unlink(do_skb, &session->skb_queue);
/* drop ref taken in j1939_session_skb_queue() */
skb_unref(do_skb);
+ spin_unlock_irqrestore(&session->skb_queue.lock, flags);
kfree_skb(do_skb);
+ } else {
+ spin_unlock_irqrestore(&session->skb_queue.lock, flags);
}
- spin_unlock_irqrestore(&session->skb_queue.lock, flags);
}
void j1939_session_skb_queue(struct j1939_session *session,