bisecting fixing commit since 98f7fdced2e0efb1599a37b3e57671a7884f3a25 building syzkaller on 8f5a7b8cde529e0a19a53f79bdf9c6cad306827b testing commit 98f7fdced2e0efb1599a37b3e57671a7884f3a25 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 390a7f84a9e805e29d319b906a8e71e7c479c3190483c0910f252511450ae533 run #0: basic kernel testing failed: BUG: sleeping function called from invalid context in stack_depot_save run #1: crashed: WARNING in io_poll_double_wake run #2: basic kernel testing failed: possible deadlock in fs_reclaim_acquire run #3: crashed: WARNING in io_poll_double_wake run #4: crashed: WARNING in io_poll_double_wake run #5: crashed: WARNING in io_poll_double_wake run #6: crashed: WARNING in io_poll_double_wake run #7: crashed: WARNING in io_poll_double_wake run #8: crashed: WARNING in io_poll_double_wake run #9: crashed: WARNING in io_poll_double_wake run #10: crashed: WARNING in io_poll_double_wake run #11: crashed: BUG: sleeping function called from invalid context in lock_sock_nested run #12: crashed: WARNING in io_poll_double_wake run #13: crashed: WARNING in io_poll_double_wake run #14: crashed: WARNING in io_poll_double_wake run #15: crashed: WARNING in io_poll_double_wake run #16: crashed: WARNING in io_poll_double_wake run #17: crashed: WARNING in io_poll_double_wake run #18: crashed: WARNING in io_poll_double_wake run #19: crashed: WARNING in io_poll_double_wake testing current HEAD 7d2a07b769330c34b4deabeed939325c77a7ec2f testing commit 7d2a07b769330c34b4deabeed939325c77a7ec2f compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: ff693c4592c54617a82f5a0c696e1fc8600299187a12bde9ae03b2f77e68f431 all runs: OK # git bisect start 7d2a07b769330c34b4deabeed939325c77a7ec2f 98f7fdced2e0efb1599a37b3e57671a7884f3a25 Bisecting: 1032 revisions left to test after this (roughly 10 steps) [c7d102232649226a69dddd58a4942cf13cff4f7c] Merge tag 'net-5.14-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net testing commit c7d102232649226a69dddd58a4942cf13cff4f7c compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 5daf3cb610e6701685c9fd1449e001bae53d38cdfad8d6a2c2abe0e4af8d28ae all runs: OK # git bisect bad c7d102232649226a69dddd58a4942cf13cff4f7c Bisecting: 557 revisions left to test after this (roughly 9 steps) [2e41a6696bf828a7b06f520d147f6911c947a7af] Merge tag 'drm-misc-fixes-2021-07-22' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes testing commit 2e41a6696bf828a7b06f520d147f6911c947a7af compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 14ca7b7ace677bf4050f2a0d740f1408eb5676d905f2b1b7189fe308e06a4503 all runs: crashed: WARNING in io_poll_double_wake # git bisect good 2e41a6696bf828a7b06f520d147f6911c947a7af Bisecting: 278 revisions left to test after this (roughly 8 steps) [6498f6151825f1e5aac5543fa9ea4ea218dcbe8c] Merge tag 'riscv-for-linus-5.14-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux testing commit 6498f6151825f1e5aac5543fa9ea4ea218dcbe8c compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 9247357dc15b09929f47e60163cd4e90003ae3bfab1710846f30f0eef5db860d all runs: crashed: WARNING in io_poll_double_wake # git bisect good 6498f6151825f1e5aac5543fa9ea4ea218dcbe8c Bisecting: 137 revisions left to test after this (roughly 7 steps) [ad6ec09d9622efca3f31ab34f925c15185c2bd0e] Merge branch 'akpm' (patches from Andrew) testing commit ad6ec09d9622efca3f31ab34f925c15185c2bd0e compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: d889c3bb3c1a29475ff105d770cae675cd35ecd47ec1ec324dcbddb3dc9664e5 run #0: crashed: WARNING in io_poll_double_wake run #1: crashed: BUG: sleeping function called from invalid context in lock_sock_nested run #2: crashed: WARNING in io_poll_double_wake run #3: crashed: WARNING in io_poll_double_wake run #4: crashed: WARNING in io_poll_double_wake run #5: crashed: WARNING in io_poll_double_wake run #6: crashed: WARNING in io_poll_double_wake run #7: crashed: WARNING in io_poll_double_wake run #8: crashed: WARNING in io_poll_double_wake run #9: crashed: WARNING in io_poll_double_wake # git bisect good ad6ec09d9622efca3f31ab34f925c15185c2bd0e Bisecting: 68 revisions left to test after this (roughly 6 steps) [9841d58f3550d11c6181424427e8ad8c9c80f1b6] net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available testing commit 9841d58f3550d11c6181424427e8ad8c9c80f1b6 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 8f88020dc939efbc645e7e2b007dfa06b4369596bc9e0b9da257e0f6ceb0f67b all runs: crashed: WARNING in io_poll_double_wake # git bisect good 9841d58f3550d11c6181424427e8ad8c9c80f1b6 Bisecting: 32 revisions left to test after this (roughly 5 steps) [e1dab4c02de0b495a9393915d71e452f8e77a464] Merge tag 'acpi-5.14-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm testing commit e1dab4c02de0b495a9393915d71e452f8e77a464 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 832bb0c2499e659ffbb31bbacbcfba39fe838fc09cadfa779104dbdbd8044104 all runs: OK # git bisect bad e1dab4c02de0b495a9393915d71e452f8e77a464 Bisecting: 16 revisions left to test after this (roughly 4 steps) [f6c5971bb78ee5c4b9659f2764e58c175b75638c] Merge tag 'libata-5.14-2021-07-30' of git://git.kernel.dk/linux-block testing commit f6c5971bb78ee5c4b9659f2764e58c175b75638c compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 956b4f197d105861b7702b9ff4d3127799e717816dee21275dbfe05e4cf120fb run #0: crashed: WARNING in io_poll_double_wake run #1: crashed: WARNING in io_poll_double_wake run #2: crashed: WARNING in io_poll_double_wake run #3: crashed: BUG: sleeping function called from invalid context in lock_sock_nested run #4: crashed: BUG: sleeping function called from invalid context in lock_sock_nested run #5: crashed: WARNING in io_poll_double_wake run #6: crashed: WARNING in io_poll_double_wake run #7: crashed: WARNING in io_poll_double_wake run #8: crashed: WARNING in io_poll_double_wake run #9: crashed: WARNING in io_poll_double_wake # git bisect good f6c5971bb78ee5c4b9659f2764e58c175b75638c Bisecting: 10 revisions left to test after this (roughly 3 steps) [27eb687bcdb987d978da842ede944bee335b3524] Merge tag 'io_uring-5.14-2021-07-30' of git://git.kernel.dk/linux-block testing commit 27eb687bcdb987d978da842ede944bee335b3524 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: fc6a6c21c2bfe93484236e3f6e9e379bb8ad72d4ad1e86b757d1091eb6bc25b4 all runs: OK # git bisect bad 27eb687bcdb987d978da842ede944bee335b3524 Bisecting: 2 revisions left to test after this (roughly 2 steps) [773af69121ecc6c53d192661af8d53bb3db028ae] io_uring: always reissue from task_work context testing commit 773af69121ecc6c53d192661af8d53bb3db028ae compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: e65d838b1158f200f5bc3cabebf54d49ba74f758fda229742770fad62dd295d1 all runs: crashed: WARNING in io_poll_double_wake # git bisect good 773af69121ecc6c53d192661af8d53bb3db028ae Bisecting: 0 revisions left to test after this (roughly 1 step) [a890d01e4ee016978776e45340e521b3bbbdf41f] io_uring: fix poll requests leaking second poll entries testing commit a890d01e4ee016978776e45340e521b3bbbdf41f compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: 791c6c9d6e46beb6f485de7bf10e85b9462175759b8c31067157da0758c0719a run #0: basic kernel testing failed: BUG: sleeping function called from invalid context in stack_depot_save run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK # git bisect bad a890d01e4ee016978776e45340e521b3bbbdf41f Bisecting: 0 revisions left to test after this (roughly 0 steps) [ef04688871f3386b6d40ade8f5c664290420f819] io_uring: don't block level reissue off completion path testing commit ef04688871f3386b6d40ade8f5c664290420f819 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.1 kernel signature: a2f7c151984dcf0b97b4085d26577aa76f0aca6c793b5f12af8403aff9c8663e all runs: crashed: WARNING in io_poll_double_wake # git bisect good ef04688871f3386b6d40ade8f5c664290420f819 a890d01e4ee016978776e45340e521b3bbbdf41f is the first bad commit commit a890d01e4ee016978776e45340e521b3bbbdf41f Author: Hao Xu Date: Wed Jul 28 11:03:22 2021 +0800 io_uring: fix poll requests leaking second poll entries For pure poll requests, it doesn't remove the second poll wait entry when it's done, neither after vfs_poll() or in the poll completion handler. We should remove the second poll wait entry. And we use io_poll_remove_double() rather than io_poll_remove_waitqs() since the latter has some redundant logic. Fixes: 88e41cf928a6 ("io_uring: add multishot mode for IORING_OP_POLL_ADD") Cc: stable@vger.kernel.org # 5.13+ Signed-off-by: Hao Xu Link: https://lore.kernel.org/r/20210728030322.12307-1-haoxu@linux.alibaba.com Signed-off-by: Jens Axboe fs/io_uring.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) culprit signature: 791c6c9d6e46beb6f485de7bf10e85b9462175759b8c31067157da0758c0719a parent signature: a2f7c151984dcf0b97b4085d26577aa76f0aca6c793b5f12af8403aff9c8663e revisions tested: 13, total time: 2h49m25.052699402s (build: 1h25m0.604722981s, test: 1h22m57.874249939s) first good commit: a890d01e4ee016978776e45340e521b3bbbdf41f io_uring: fix poll requests leaking second poll entries recipients (to): ["axboe@kernel.dk" "axboe@kernel.dk" "haoxu@linux.alibaba.com" "io-uring@vger.kernel.org"] recipients (cc): ["asml.silence@gmail.com" "linux-kernel@vger.kernel.org"]