diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c
index 6b61323ce23cad772371657cf18833027f56d0f9..0c2d13ad69bbf0c799f8bff6fbc2e78ffcc22763 100644
--- a/net/bluetooth/sco.c
+++ b/net/bluetooth/sco.c
@@ -255,7 +255,7 @@ static inline int sco_send_frame(struct sock *sk, struct msghdr *msg, int len)
 	}
 
 	if ((err = hci_send_sco(conn->hcon, skb)) < 0)
-		goto fail;
+		return err;
 
 	return count;