bisecting cause commit starting from 59126901f200f5fc907153468b03c64e0081b6e6 building syzkaller on abf9ba4fc75d9b29af15625d44dcfc1360fad3b7 testing commit 59126901f200f5fc907153468b03c64e0081b6e6 with gcc (GCC) 8.1.0 kernel signature: eaf66a98350a2435508eb43ee986435e609d1be68b09f06a92f99562318f5e58 run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: INFO: rcu detected stall in do_idle run #3: crashed: INFO: rcu detected stall in do_idle run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: INFO: rcu detected stall in do_idle run #6: crashed: INFO: rcu detected stall in do_idle run #7: crashed: INFO: rcu detected stall in batadv_nc_worker run #8: crashed: INFO: rcu detected stall in corrupted run #9: crashed: INFO: rcu detected stall in do_idle testing release v5.8 testing commit bcf876870b95592b52519ed4aafcf9d95999bc9c with gcc (GCC) 8.1.0 kernel signature: d0cf9bd576e5b5e44f5d93b36f329fa284631770414270c52de8c6766ec0100d run #0: crashed: INFO: rcu detected stall in addrconf_dad_work run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: BUG: workqueue lockup run #3: crashed: INFO: rcu detected stall in do_idle run #4: crashed: INFO: task hung in linkwatch_event run #5: crashed: INFO: rcu detected stall in rtnl_newlink run #6: crashed: INFO: task hung in addrconf_dad_work run #7: crashed: INFO: rcu detected stall in do_idle run #8: crashed: no output from test machine run #9: crashed: no output from test machine testing release v5.7 testing commit 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162 with gcc (GCC) 8.1.0 kernel signature: ec03f2380fff9675a283b7cca9b50eae7d57fed92a7c65bc76c29e5f4edc243b run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in corrupted run #2: crashed: BUG: soft lockup in do_idle run #3: crashed: INFO: rcu detected stall in linkwatch_event run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: INFO: rcu detected stall in do_idle run #6: crashed: INFO: rcu detected stall in neigh_periodic_work run #7: crashed: INFO: rcu detected stall in do_idle run #8: crashed: INFO: rcu detected stall in neigh_periodic_work run #9: crashed: no output from test machine testing release v5.6 testing commit 7111951b8d4973bda27ff663f2cf18b663d15b48 with gcc (GCC) 8.1.0 kernel signature: 883ebebfeb6485e5c4e07005f3cd9350211ef848cc18b578c5126d93167ca359 run #0: crashed: INFO: rcu detected stall in addrconf_dad_work run #1: crashed: INFO: rcu detected stall in __do_sys_newlstat run #2: crashed: INFO: rcu detected stall in do_idle run #3: crashed: INFO: rcu detected stall in do_idle run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: BUG: soft lockup in do_idle run #6: crashed: BUG: soft lockup in rtnl_newlink run #7: crashed: BUG: soft lockup in do_idle run #8: crashed: no output from test machine run #9: crashed: BUG: soft lockup in do_idle testing release v5.5 testing commit d5226fa6dbae0569ee43ecfc08bdcd6770fc4755 with gcc (GCC) 8.1.0 kernel signature: 052a6782bf0ef028153ab960ab96476ea91026dac5684196628f97cfd801c36c all runs: crashed: BUG: sleeping function called from invalid context in cpus_read_lock testing release v5.4 testing commit 219d54332a09e8d8741c1e1982f5eae56099de85 with gcc (GCC) 8.1.0 kernel signature: 3f71da58509cd1ae991af6220ad4a19600cfd2f749ec82d40817e8a734ddb820 all runs: crashed: BUG: sleeping function called from invalid context in cpus_read_lock testing release v5.3 testing commit 4d856f72c10ecb060868ed10ff1b1453943fc6c8 with gcc (GCC) 8.1.0 kernel signature: 579203580d7418f21f95bed99f9b86cba0f4f651fa940c2a8f951a0c2f69322a all runs: crashed: BUG: sleeping function called from invalid context in cpus_read_lock testing release v5.2 testing commit 0ecfebd2b52404ae0c54a878c872bb93363ada36 with gcc (GCC) 8.1.0 kernel signature: 5e6d57dacc38a26c3599b88f6682e48ce47a040cfa5d36fc826c69c3e73c5d9a all runs: crashed: BUG: sleeping function called from invalid context in cpus_read_lock testing release v5.1 testing commit e93c9c99a629c61837d5a7fc2120cd2b6c70dbdd with gcc (GCC) 8.1.0 kernel signature: d56c4860cc9eb8e9d16df48533303323ab8f0baf176385bb4ea4957c812e5966 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: INFO: rcu detected stall in wb_workfn run #3: crashed: INFO: rcu detected stall in smp_call_function run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: INFO: rcu detected stall in blk_done_softirq run #6: crashed: no output from test machine run #7: crashed: no output from test machine run #8: crashed: no output from test machine run #9: crashed: no output from test machine testing release v5.0 testing commit 1c163f4c7b3f621efff9b28a47abb36f7378d783 with gcc (GCC) 8.1.0 kernel signature: 63fb06d5cbbab158516becca9453003eb30e1f361b829302ffc20acd473a1925 run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in sys_readlinkat run #2: crashed: INFO: rcu detected stall in do_idle run #3: crashed: INFO: rcu detected stall in batadv_iv_send_outstanding_bat_ogm_packet run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: BUG: soft lockup in smp_call_function run #6: crashed: BUG: soft lockup in tc_modify_qdisc run #7: crashed: INFO: rcu detected stall in wb_workfn run #8: crashed: INFO: rcu detected stall in do_idle run #9: crashed: INFO: rcu detected stall in do_idle testing release v4.20 testing commit 8fe28cb58bcb235034b64cbbb7550a8a43fd88be with gcc (GCC) 8.1.0 kernel signature: b257e2dd04ab919435fdf46b38a1b71cdc440a13f3f329a2fcd76820ddfd10bb run #0: crashed: INFO: rcu detected stall in batadv_bla_periodic_work run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: INFO: rcu detected stall in cache_reap run #3: crashed: INFO: rcu detected stall in sys_access run #4: crashed: INFO: rcu detected stall in sys_newlstat run #5: crashed: BUG: soft lockup in do_idle run #6: crashed: INFO: rcu detected stall in do_idle run #7: crashed: no output from test machine run #8: crashed: no output from test machine run #9: crashed: no output from test machine testing release v4.19 testing commit 84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d with gcc (GCC) 8.1.0 kernel signature: 8227926f452b58bec4717946a352299f553aea825183fbecf6ea4707674bdc47 all runs: OK # git bisect start 8fe28cb58bcb235034b64cbbb7550a8a43fd88be 84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d Bisecting: 7499 revisions left to test after this (roughly 13 steps) [ec9c166434595382be3babf266febf876327774d] Merge tag 'mips_fixes_4.20_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux testing commit ec9c166434595382be3babf266febf876327774d with gcc (GCC) 8.1.0 kernel signature: 5a4edc7beae238c8256bbd9b1b975dbd8ce2a54ae98978f7bc8579d8f7aeb5d3 run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: BUG: soft lockup in do_idle run #3: crashed: INFO: rcu detected stall in batadv_tt_purge run #4: crashed: INFO: rcu detected stall in smp_call_function run #5: crashed: INFO: rcu detected stall in smp_call_function run #6: crashed: INFO: rcu detected stall in wb_workfn run #7: crashed: INFO: rcu detected stall in tc_modify_qdisc run #8: crashed: no output from test machine run #9: boot failed: KASAN: use-after-free Read in dd_has_work # git bisect bad ec9c166434595382be3babf266febf876327774d Bisecting: 3252 revisions left to test after this (roughly 12 steps) [50b825d7e87f4cff7070df6eb26390152bb29537] Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next testing commit 50b825d7e87f4cff7070df6eb26390152bb29537 with gcc (GCC) 8.1.0 kernel signature: 051d38c94185658fd2c320532a4c80069444ce18fa7fc5591f3a3644379b5e72 run #0: crashed: INFO: rcu detected stall in syscall_trace_enter run #1: crashed: INFO: rcu detected stall in ext4_file_write_iter run #2: crashed: INFO: rcu detected stall in mutex_spin_on_owner run #3: crashed: INFO: rcu detected stall in corrupted run #4: crashed: INFO: rcu detected stall in sys_exit_group run #5: crashed: BUG: soft lockup in process_srcu run #6: crashed: BUG: soft lockup in do_idle run #7: crashed: INFO: rcu detected stall in wb_workfn run #8: crashed: no output from test machine run #9: crashed: BUG: soft lockup in do_idle # git bisect bad 50b825d7e87f4cff7070df6eb26390152bb29537 Bisecting: 2120 revisions left to test after this (roughly 11 steps) [99e9acd85ccbdc8f5785f9e961d4956e96bd6aa5] Merge tag 'mlx5-updates-2018-10-17' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux testing commit 99e9acd85ccbdc8f5785f9e961d4956e96bd6aa5 with gcc (GCC) 8.1.0 kernel signature: 5984e6fce6757ae73f5a4a8c5ad79922bd3715d4bca531475f617fd400a9779d run #0: crashed: INFO: rcu detected stall in addrconf_dad_work run #1: crashed: BUG: soft lockup in hci_cmd_timeout run #2: crashed: INFO: rcu detected stall in wb_workfn run #3: crashed: BUG: soft lockup in batadv_nc_worker run #4: crashed: INFO: rcu detected stall in wb_workfn run #5: crashed: BUG: soft lockup in smp_call_function run #6: crashed: INFO: rcu detected stall in do_idle run #7: crashed: INFO: rcu detected stall in smp_call_function run #8: crashed: no output from test machine run #9: crashed: no output from test machine # git bisect bad 99e9acd85ccbdc8f5785f9e961d4956e96bd6aa5 Bisecting: 989 revisions left to test after this (roughly 10 steps) [d793fb46822ff7408a1767313ef6b12e811baa55] Merge tag 'wireless-drivers-next-for-davem-2018-10-02' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next testing commit d793fb46822ff7408a1767313ef6b12e811baa55 with gcc (GCC) 8.1.0 kernel signature: 0858b9b043d6ad4fc372cf2ec0d0919cbcbe062f5639d46659c35829b1f39c53 all runs: OK # git bisect good d793fb46822ff7408a1767313ef6b12e811baa55 Bisecting: 461 revisions left to test after this (roughly 9 steps) [071a234ad744ab9a1e9c948874d5f646a2964734] Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next testing commit 071a234ad744ab9a1e9c948874d5f646a2964734 with gcc (GCC) 8.1.0 kernel signature: a6199695ea692a64d524b918314b008c77a61b5385a8b57ca49697c124812e5c run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: INFO: rcu detected stall in do_idle run #3: crashed: INFO: rcu detected stall in do_idle run #4: crashed: INFO: rcu detected stall in do_idle run #5: crashed: INFO: rcu detected stall in do_idle run #6: crashed: INFO: rcu detected stall in reg_check_chans_work run #7: crashed: INFO: rcu detected stall in do_idle run #8: crashed: INFO: rcu detected stall in do_idle run #9: crashed: BUG: soft lockup in smp_call_function # git bisect bad 071a234ad744ab9a1e9c948874d5f646a2964734 Bisecting: 275 revisions left to test after this (roughly 8 steps) [5580d810560da33804053ae3bca13110c9a8d5e8] Merge tag 'mt76-for-kvalo-2018-10-05' of https://github.com/nbd168/wireless testing commit 5580d810560da33804053ae3bca13110c9a8d5e8 with gcc (GCC) 8.1.0 kernel signature: 3511eb98b55ba1a3d43d7a541ef06470726e92ba99ec773bafc60a30fb89b255 all runs: OK # git bisect good 5580d810560da33804053ae3bca13110c9a8d5e8 Bisecting: 137 revisions left to test after this (roughly 7 steps) [b245d32c995868879f361d252f32bb8a2ca33deb] net: sched: cls_u32: keep track of knodes count in tc_u_common testing commit b245d32c995868879f361d252f32bb8a2ca33deb with gcc (GCC) 8.1.0 kernel signature: a22d1ad36e1a94fe4700d4c14fe4e61ae5af177247fa39ac70075247b4132d39 run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in corrupted run #4: crashed: INFO: rcu detected stall in smp_call_function run #5: crashed: INFO: rcu detected stall in do_idle run #6: crashed: BUG: soft lockup in smp_call_function run #7: crashed: INFO: rcu detected stall in do_idle run #8: crashed: INFO: rcu detected stall in corrupted run #9: crashed: BUG: soft lockup in do_idle # git bisect bad b245d32c995868879f361d252f32bb8a2ca33deb Bisecting: 68 revisions left to test after this (roughly 6 steps) [cc5f0eb2164f9aa11fe631f8d905192e0233e262] net: Move free of fib_metrics to helper testing commit cc5f0eb2164f9aa11fe631f8d905192e0233e262 with gcc (GCC) 8.1.0 kernel signature: 5e410af24860e4ad6c4e0a7a852c718ef4393fb8a345c5dfd23bdb3a89b959eb run #0: crashed: INFO: rcu detected stall in sys_newlstat run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: BUG: soft lockup in do_idle run #3: crashed: INFO: rcu detected stall in do_idle run #4: crashed: INFO: rcu detected stall in kernfs_fop_open run #5: crashed: INFO: task hung in corrupted run #6: crashed: INFO: rcu detected stall in smp_call_function run #7: crashed: INFO: rcu detected stall in tc_modify_qdisc run #8: crashed: INFO: rcu detected stall in smp_call_function run #9: crashed: INFO: rcu detected stall in tc_modify_qdisc # git bisect bad cc5f0eb2164f9aa11fe631f8d905192e0233e262 Bisecting: 33 revisions left to test after this (roughly 5 steps) [6a5e6b118092dfddc545d95911d66d6562f05281] Merge branch 'ieee802154-for-davem-2018-10-04' of git://git.kernel.org/pub/scm/linux/kernel/git/sschmidt/wpan-next testing commit 6a5e6b118092dfddc545d95911d66d6562f05281 with gcc (GCC) 8.1.0 kernel signature: e088a5c441d7e674ae31dce73a698cc2861cfe9f587f562fa75468ca15a28b71 all runs: OK # git bisect good 6a5e6b118092dfddc545d95911d66d6562f05281 Bisecting: 15 revisions left to test after this (roughly 4 steps) [9e50727f0e710e25e9fd740c9f43f51b37757773] Merge tag 'mlx5-updates-2018-10-03' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux testing commit 9e50727f0e710e25e9fd740c9f43f51b37757773 with gcc (GCC) 8.1.0 kernel signature: 802a3f7bde6cc29a1c36500d0df6ee163e9ccffd3c93e7fdc60e85573b48848e all runs: OK # git bisect good 9e50727f0e710e25e9fd740c9f43f51b37757773 Bisecting: 7 revisions left to test after this (roughly 3 steps) [2dc0865e9ac7150e2d3b29afdc32d04b99f37902] bnxt_en: Add a driver specific gre_ver_check devlink parameter. testing commit 2dc0865e9ac7150e2d3b29afdc32d04b99f37902 with gcc (GCC) 8.1.0 kernel signature: 4e585369647612f1c0a0dcfe007b4a18a7535df0d5e3778a81180836f6dce76c run #0: OK 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: boot failed: KASAN: use-after-free Read in dd_has_work # git bisect good 2dc0865e9ac7150e2d3b29afdc32d04b99f37902 Bisecting: 3 revisions left to test after this (roughly 2 steps) [5a781ccbd19e4664babcbe4b4ead7aa2b9283d22] tc: Add support for configuring the taprio scheduler testing commit 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 with gcc (GCC) 8.1.0 kernel signature: a610a6976d895cb4c73d37fca83c8ea2c399edc0fc677e10466f2231864259fd run #0: crashed: INFO: rcu detected stall in do_idle run #1: crashed: INFO: rcu detected stall in do_idle run #2: crashed: BUG: soft lockup in tc_modify_qdisc run #3: crashed: BUG: soft lockup in smp_call_function run #4: crashed: INFO: rcu detected stall in smp_call_function run #5: crashed: INFO: rcu detected stall in tc_modify_qdisc run #6: crashed: INFO: rcu detected stall in corrupted run #7: crashed: INFO: rcu detected stall in mutex_spin_on_owner run #8: crashed: INFO: rcu detected stall in do_idle run #9: crashed: no output from test machine # git bisect bad 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 Bisecting: 1 revision left to test after this (roughly 1 step) [53e233ea2fa9fa7e2405e95070981f327d90e519] devlink: Add Documentation/networking/devlink-params-bnxt.txt testing commit 53e233ea2fa9fa7e2405e95070981f327d90e519 with gcc (GCC) 8.1.0 kernel signature: d5dbce2efef2ae8dfdc49d8b1cf6109601673d9a4213ba7af6fafc98decc35be all runs: OK # git bisect good 53e233ea2fa9fa7e2405e95070981f327d90e519 Bisecting: 0 revisions left to test after this (roughly 0 steps) [34f8c58f47797efa25ba212001514ef31e153134] Merge branch 'bnxt_en-devlink-param-updates' testing commit 34f8c58f47797efa25ba212001514ef31e153134 with gcc (GCC) 8.1.0 kernel signature: 8f8ba42300300cef15b65f4f5ca5dfe3a8710c63ad27b5145a86e8f38bd05066 all runs: OK # git bisect good 34f8c58f47797efa25ba212001514ef31e153134 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 is the first bad commit commit 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 Author: Vinicius Costa Gomes Date: Fri Sep 28 17:59:43 2018 -0700 tc: Add support for configuring the taprio scheduler This traffic scheduler allows traffic classes states (transmission allowed/not allowed, in the simplest case) to be scheduled, according to a pre-generated time sequence. This is the basis of the IEEE 802.1Qbv specification. Example configuration: tc qdisc replace dev enp3s0 parent root handle 100 taprio \ num_tc 3 \ map 2 2 1 0 2 2 2 2 2 2 2 2 2 2 2 2 \ queues 1@0 1@1 2@2 \ base-time 1528743495910289987 \ sched-entry S 01 300000 \ sched-entry S 02 300000 \ sched-entry S 04 300000 \ clockid CLOCK_TAI The configuration format is similar to mqprio. The main difference is the presence of a schedule, built by multiple "sched-entry" definitions, each entry has the following format: sched-entry The only supported is "S", which means "SetGateStates", following the IEEE 802.1Qbv-2015 definition (Table 8-6). is a bitmask where each bit is a associated with a traffic class, so bit 0 (the least significant bit) being "on" means that traffic class 0 is "active" for that schedule entry. is a time duration in nanoseconds that specifies for how long that state defined by and should be held before moving to the next entry. This schedule is circular, that is, after the last entry is executed it starts from the first one, indefinitely. The other parameters can be defined as follows: - base-time: specifies the instant when the schedule starts, if 'base-time' is a time in the past, the schedule will start at base-time + (N * cycle-time) where N is the smallest integer so the resulting time is greater than "now", and "cycle-time" is the sum of all the intervals of the entries in the schedule; - clockid: specifies the reference clock to be used; The parameters should be similar to what the IEEE 802.1Q family of specification defines. Signed-off-by: Vinicius Costa Gomes Signed-off-by: David S. Miller include/uapi/linux/pkt_sched.h | 46 ++ net/sched/Kconfig | 11 + net/sched/Makefile | 1 + net/sched/sch_taprio.c | 962 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 1020 insertions(+) create mode 100644 net/sched/sch_taprio.c culprit signature: a610a6976d895cb4c73d37fca83c8ea2c399edc0fc677e10466f2231864259fd parent signature: 8f8ba42300300cef15b65f4f5ca5dfe3a8710c63ad27b5145a86e8f38bd05066 revisions tested: 26, total time: 5h56m34.127816212s (build: 2h29m46.228471395s, test: 3h23m53.838050937s) first bad commit: 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 tc: Add support for configuring the taprio scheduler recipients (to): ["davem@davemloft.net" "davem@davemloft.net" "jhs@mojatatu.com" "jiri@resnulli.us" "netdev@vger.kernel.org" "vinicius.gomes@intel.com" "xiyou.wangcong@gmail.com"] recipients (cc): ["linux-kernel@vger.kernel.org"] crash: no output from test machine