diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/can/raw.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/can/raw.c b/net/can/raw.c index ccfe633eec8e..a10e3338f084 100644 --- a/net/can/raw.c +++ b/net/can/raw.c | |||
@@ -650,6 +650,10 @@ static int raw_sendmsg(struct kiocb *iocb, struct socket *sock, | |||
650 | err = sock_tx_timestamp(msg, sk, skb_tx(skb)); | 650 | err = sock_tx_timestamp(msg, sk, skb_tx(skb)); |
651 | if (err < 0) | 651 | if (err < 0) |
652 | goto free_skb; | 652 | goto free_skb; |
653 | |||
654 | /* to be able to check the received tx sock reference in raw_rcv() */ | ||
655 | skb_tx(skb)->prevent_sk_orphan = 1; | ||
656 | |||
653 | skb->dev = dev; | 657 | skb->dev = dev; |
654 | skb->sk = sk; | 658 | skb->sk = sk; |
655 | 659 | ||