summaryrefslogtreecommitdiff
path: root/net/unix/af_unix.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2024-04-14 22:25:18 +0200
committerIngo Molnar <mingo@kernel.org>2024-04-14 22:25:18 +0200
commitd0331aa9789707140e938d14629c200b32ae1d0f (patch)
tree744a6b6d34f242e122bf78ca9f3a95c1548907a3 /net/unix/af_unix.c
parent93d3fde7fd19c2e2cde7220e7986f9a75e9c5680 (diff)
parent72374d71c31596c7442ac0db9a9327d0e062e941 (diff)
Merge branch 'linus' into perf/core, to pick up perf/urgent fixes
Pick up perf/urgent fixes that are upstream already, but not yet in the perf/core development branch. Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'net/unix/af_unix.c')
-rw-r--r--net/unix/af_unix.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index 5b41e2321209..d032eb5fa6df 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -2665,7 +2665,9 @@ static struct sk_buff *manage_oob(struct sk_buff *skb, struct sock *sk,
}
} else if (!(flags & MSG_PEEK)) {
skb_unlink(skb, &sk->sk_receive_queue);
- consume_skb(skb);
+ WRITE_ONCE(u->oob_skb, NULL);
+ if (!WARN_ON_ONCE(skb_unref(skb)))
+ kfree_skb(skb);
skb = skb_peek(&sk->sk_receive_queue);
}
}