[ Sasha's backport helper bot ]
Hi,
✅ All tests passed successfully. No issues detected. No action required from the submitter.
The upstream commit SHA1 provided is correct: 11498715f266a3fb4caabba9dd575636cbcaa8f1
WARNING: Author mismatch between patch and upstream commit: Backport author: Lee Joneslee@kernel.org Commit author: Kuniyuki Iwashimakuniyu@amazon.com
Status in newer kernel trees: 6.14.y | Present (exact SHA1) 6.12.y | Present (exact SHA1) 6.6.y | Not found
Note: The patch differs from the upstream commit: --- 1: 11498715f266a ! 1: 70f88da83e058 af_unix: Remove io_uring code for GC. @@ Metadata ## Commit message ## af_unix: Remove io_uring code for GC.
+ [ Upstream commit 11498715f266a3fb4caabba9dd575636cbcaa8f1 ] + Since commit 705318a99a13 ("io_uring/af_unix: disable sending io_uring over sockets"), io_uring's unix socket cannot be passed via SCM_RIGHTS, so it does not contribute to cyclic reference and @@ Commit message Acked-by: Jens Axboe axboe@kernel.dk Link: https://lore.kernel.org/r/20240129190435.57228-3-kuniyu@amazon.com Signed-off-by: Jakub Kicinski kuba@kernel.org - - ## include/net/af_unix.h ## -@@ include/net/af_unix.h: static inline struct unix_sock *unix_get_socket(struct file *filp) - void unix_inflight(struct user_struct *user, struct file *fp); - void unix_notinflight(struct user_struct *user, struct file *fp); - void unix_destruct_scm(struct sk_buff *skb); --void io_uring_destruct_scm(struct sk_buff *skb); - void unix_gc(void); - void wait_for_unix_gc(struct scm_fp_list *fpl); - struct sock *unix_peer_get(struct sock *sk); + (cherry picked from commit 11498715f266a3fb4caabba9dd575636cbcaa8f1) + Signed-off-by: Lee Jones lee@kernel.org
## net/unix/garbage.c ## @@ net/unix/garbage.c: static bool gc_in_progress; @@ net/unix/garbage.c: static void __unix_gc(struct work_struct *work) - * release.path eventually putting registered files. - */ - skb_queue_walk_safe(&hitlist, skb, next_skb) { -- if (skb->destructor == io_uring_destruct_scm) { +- if (skb->scm_io_uring) { - __skb_unlink(skb, &hitlist); - skb_queue_tail(&skb->sk->sk_receive_queue, skb); - } @@ net/unix/garbage.c: static void __unix_gc(struct work_struct *work) /* All candidates should have been detached by now. */ WARN_ON_ONCE(!list_empty(&gc_candidates));
- - ## net/unix/scm.c ## -@@ net/unix/scm.c: void unix_destruct_scm(struct sk_buff *skb) - sock_wfree(skb); - } - EXPORT_SYMBOL(unix_destruct_scm); -- --void io_uring_destruct_scm(struct sk_buff *skb) --{ -- unix_destruct_scm(skb); --} --EXPORT_SYMBOL(io_uring_destruct_scm); ---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-6.6.y | Success | Success |