diff --git a/net/can/isotp.c b/net/can/isotp.c index ef6644b..e87e60c 100644 --- a/net/can/isotp.c +++ b/net/can/isotp.c @@ -892,7 +892,9 @@ static int isotp_sendmsg(struct kiocb *iocb, struct socket *sock, return -EAGAIN; /* wait for complete transmission of current pdu */ - wait_event_interruptible(so->wait, so->tx.state == ISOTP_IDLE); + err = wait_event_interruptible(so->wait, so->tx.state == ISOTP_IDLE); + if (err) + return err; } if (!size || size > MAX_MSG_LENGTH)