|
@@ -2312,6 +2312,7 @@ static int unix_stream_read_generic(struct unix_stream_read_state *state)
|
|
bool drop_skb;
|
|
bool drop_skb;
|
|
struct sk_buff *skb, *last;
|
|
struct sk_buff *skb, *last;
|
|
|
|
|
|
|
|
+redo:
|
|
unix_state_lock(sk);
|
|
unix_state_lock(sk);
|
|
if (sock_flag(sk, SOCK_DEAD)) {
|
|
if (sock_flag(sk, SOCK_DEAD)) {
|
|
err = -ECONNRESET;
|
|
err = -ECONNRESET;
|
|
@@ -2353,7 +2354,7 @@ again:
|
|
}
|
|
}
|
|
|
|
|
|
mutex_lock(&u->readlock);
|
|
mutex_lock(&u->readlock);
|
|
- continue;
|
|
|
|
|
|
+ goto redo;
|
|
unlock:
|
|
unlock:
|
|
unix_state_unlock(sk);
|
|
unix_state_unlock(sk);
|
|
break;
|
|
break;
|