bisecting cause commit starting from 7cc2a8ea104820dd9e702202621e8fd4d9f6c8cf building syzkaller on 510951950dc0ee69cfdaf746061d3dbe31b49fd8 testing commit 7cc2a8ea104820dd9e702202621e8fd4d9f6c8cf with gcc (GCC) 8.1.0 kernel signature: 0218f8c3deab4bf1dc05ec821ecba5cade0d627cb05e868c61510611d212a5a3 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: INFO: rcu detected stall in tc_modify_qdisc run #5: crashed: INFO: rcu detected stall in tc_modify_qdisc run #6: crashed: INFO: rcu detected stall in tc_modify_qdisc 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.7 testing commit 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162 with gcc (GCC) 8.1.0 kernel signature: 3d2f20fdac25357c36be34cf9f276f2b76f2790a657264bcb1174bc486df1c38 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: INFO: rcu detected stall in tc_modify_qdisc run #5: crashed: INFO: rcu detected stall in tc_modify_qdisc run #6: crashed: BUG: soft lockup in smp_call_function 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.6 testing commit 7111951b8d4973bda27ff663f2cf18b663d15b48 with gcc (GCC) 8.1.0 kernel signature: 1ddd4a2f7940261cb39f96604478f3c6548ec8a8a0efc50a5961d13ebc82868d run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: INFO: rcu detected stall in corrupted run #5: crashed: BUG: soft lockup in smp_call_function run #6: crashed: BUG: soft lockup in smp_call_function run #7: crashed: BUG: soft lockup in smp_call_function run #8: crashed: no output from test machine run #9: crashed: no output from test machine testing release v5.5 testing commit d5226fa6dbae0569ee43ecfc08bdcd6770fc4755 with gcc (GCC) 8.1.0 kernel signature: 2036bad1e205218bfff8f3ddc8b71f30e5471105d271e1b56699b9a7f1a904f7 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: 688989da55477763f026ddbbe4a7bbf1af11a2a59ccd877dc00a5df276fa61db 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: 8d68fe3bca1cb71faf22fc3a1f78d66767bf4662007cf9e27a8570a89031ca2e 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: e4a6280101bdd14d150a9f224ac2df3a5f9b87f1e461005c083cc6f93fe28e6d 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: 278a3c90500bcb284e9d2764e5740a42047b78b6b87a376c86d592023f8fab6c run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: INFO: rcu detected stall in tc_modify_qdisc run #5: crashed: INFO: rcu detected stall in tc_modify_qdisc 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: 1b252f0f595a00366d61ba1820a127238db34deff4ff479ed5d2cc0e4bbf70c0 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: no output from test machine run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 v4.20 testing commit 8fe28cb58bcb235034b64cbbb7550a8a43fd88be with gcc (GCC) 8.1.0 kernel signature: acc3cef0c3c7cd9ed3e226e63eb6f1be4f8b3ca7f94b8e8dfd9c89974e765a91 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 v4.19 testing commit 84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d with gcc (GCC) 8.1.0 kernel signature: d1af9aa9ceee8ab1b7673b9a544cd74a670e4bb36edd3e25542a04d1a91e07df 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: 3d1699d18370ae8bdfba5e5ef4faef2ff07907d9410710c822a563ed7165e405 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: INFO: rcu detected stall in tc_modify_qdisc run #5: crashed: no output from test machine 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: BUG: soft lockup in smp_call_function # 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: 3c98cf8217352a18d7188d962c0d24d3f1fd90ec91ab909a7d12323a53353c3d run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: basic kernel testing failed: failed to copy test binary to VM: failed to run ["scp" "-P" "22" "-F" "/dev/null" "-o" "UserKnownHostsFile=/dev/null" "-o" "BatchMode=yes" "-o" "IdentitiesOnly=yes" "-o" "StrictHostKeyChecking=no" "-o" "ConnectTimeout=10" "-i" "/syzkaller/jobs/linux/workdir/image/key" "/tmp/syz-executor516349271" "root@10.128.15.203:./syz-executor516349271"]: exit status 1 Connection timed out during banner exchange lost connection run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: 5257ae515c1a9b57b21c43046a353f9735e653987343915cf7b445a18a4b23e8 run #0: crashed: INFO: rcu detected stall in tc_modify_qdisc run #1: crashed: INFO: rcu detected stall in tc_modify_qdisc run #2: crashed: INFO: rcu detected stall in tc_modify_qdisc run #3: crashed: INFO: rcu detected stall in tc_modify_qdisc run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: b833df205820d5b85ea200bc662db0327fe993176ce99551da80b8aa1f94cbfa 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: e6635e3f724a69dbef16b97f62775c6a9011f341a4ea66dbcefe58ae79142329 run #0: crashed: BUG: soft lockup in smp_call_function run #1: crashed: INFO: rcu detected stall in rtnl_newlink run #2: crashed: BUG: soft lockup in smp_call_function run #3: crashed: INFO: rcu detected stall in rtnl_newlink run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: 7f1b3e13f770f556399c7aa4663ed4f95a891f4126a792d885681c95acb78072 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: 0fd1aef4d08b32c48411f014f9a02ade962b38a2e03366903bb99b94a091bf58 run #0: crashed: INFO: rcu detected stall in call_usermodehelper_exec_async run #1: crashed: INFO: rcu detected stall in rtnl_newlink run #2: crashed: INFO: rcu detected stall in rtnl_newlink run #3: crashed: no output from test machine run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: 9e75a882adbdc6d9d34491d2c2806af596b6a6868104e9cb56d695cac4de4fd9 run #0: crashed: INFO: rcu detected stall in rtnl_newlink run #1: crashed: INFO: rcu detected stall in rtnl_newlink run #2: crashed: no output from test machine run #3: crashed: no output from test machine run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: 0e9fd44b42f51f4bbb723201e735a229eb7838412780ded2fc50bb115a57c9f3 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: f256fcf56ffe07118d8f742a5a4a2427341d5250f5674581ecf5926d077a955f 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: 370ffec23472ea83708bb2f7c80d1f2785f41144e096de77006dd4034614ba41 all runs: OK # 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: 08a638e822d0355549300ccf14f842c8ee150ba7e8cccc0f635597c3213e9f97 run #0: crashed: INFO: rcu detected stall in rtnl_newlink run #1: crashed: INFO: rcu detected stall in rtnl_newlink run #2: crashed: no output from test machine run #3: crashed: no output from test machine run #4: crashed: no output from test machine run #5: crashed: no output from test machine 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 # 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: 985abfb6254c80bb740eaf78e7e4473c4af358bb643deefe1965c4dab97ab74f 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: 53189e8a9314204e2a2df148cd432a1c1785357e58e811dc120a31e7598aea1a 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: 08a638e822d0355549300ccf14f842c8ee150ba7e8cccc0f635597c3213e9f97 parent signature: 53189e8a9314204e2a2df148cd432a1c1785357e58e811dc120a31e7598aea1a revisions tested: 25, total time: 5h57m40.697683338s (build: 2h36m10.702443217s, test: 3h18m11.614421317s) first bad commit: 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 tc: Add support for configuring the taprio scheduler cc: ["davem@davemloft.net" "jhs@mojatatu.com" "jiri@resnulli.us" "linux-kernel@vger.kernel.org" "netdev@vger.kernel.org" "vinicius.gomes@intel.com" "xiyou.wangcong@gmail.com"] crash: no output from test machine