diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index ab23c8d72122b22eedd522e583733a944ea032e8..26c23f523d3703bc1f5f43679231bd5f81223f79 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -2708,7 +2708,7 @@ static int unix_stream_read_generic(struct unix_stream_read_state *state, #if IS_ENABLED(CONFIG_AF_UNIX_OOB) if (skb) { skb = manage_oob(skb, sk, flags, copied); - if (!skb && copied) { + if (!skb && (copied || !size)) { unix_state_unlock(sk); break; }