syzbot has found a reproducer for the following issue on:
HEAD commit: b94de4d1 Linux 4.19.155
git tree: linux-4.19.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=14575792500000
kernel config:
https://syzkaller.appspot.com/x/.config?x=252047157acf1cb1
syz repro:
https://syzkaller.appspot.com/x/repro.syz?x=1041a5c6500000
C reproducer:
https://syzkaller.appspot.com/x/repro.c?x=10d21f32500000
wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50
------------[ cut here ]------------
no supported rates (0xffffffff) in rate_mask 0x0 with flags 0x0
WARNING: CPU: 0 PID: 431 at net/mac80211/rate.c:359 __rate_control_send_low+0x4bb/0x580 net/mac80211/rate.c:359
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 431 Comm: kworker/u4:4 Not tainted 4.19.155-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: phy0 ieee80211_iface_work
Call Trace:
<IRQ>
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1fc/0x2fe lib/dump_stack.c:118
panic+0x26a/0x50e kernel/panic.c:186
__warn.cold+0x20/0x61 kernel/panic.c:541
report_bug+0x262/0x2b0 lib/bug.c:186
fixup_bug arch/x86/kernel/traps.c:178 [inline]
fixup_bug arch/x86/kernel/traps.c:173 [inline]
do_error_trap+0x1d7/0x310 arch/x86/kernel/traps.c:296
invalid_op+0x14/0x20 arch/x86/entry/entry_64.S:1038
RIP: 0010:__rate_control_send_low+0x4bb/0x580 net/mac80211/rate.c:359
Code: 0f 85 d6 00 00 00 48 8b 44 24 18 44 8b 24 a8 e8 fb 82 a9 f9 8b 54 24 24 44 89 e9 44 89 e6 48 c7 c7 60 dd 66 89 e8 30 61 7d f9 <0f> 0b e9 03 fe ff ff e8 d9 82 a9 f9 41 83 cd 10 e9 32 fc ff ff e8
RSP: 0018:ffff8880ba007a60 EFLAGS: 00010282
RAX: 0000000000000000 RBX: ffff888090f480a8 RCX: 0000000000000000
RDX: 0000000000000100 RSI: ffffffff814fda81 RDI: ffffed1017400f3e
RBP: ffff8880abae24e8 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000005 R11: 0000000000000000 R12: 00000000ffffffff
R13: 0000000000000000 R14: 000000000000000c R15: 0000000000000000
rate_control_send_low+0x272/0x610 net/mac80211/rate.c:383
minstrel_ht_get_rate+0x58/0x1510 net/mac80211/rc80211_minstrel_ht.c:1045
rate_control_get_rate+0x43c/0x520 net/mac80211/rate.c:910
__ieee80211_beacon_get+0x93b/0x1a30 net/mac80211/tx.c:4405
ieee80211_beacon_get_tim+0x88/0x890 net/mac80211/tx.c:4432
ieee80211_beacon_get include/net/mac80211.h:4484 [inline]
mac80211_hwsim_beacon_tx+0xff/0x680 drivers/net/wireless/mac80211_hwsim.c:1577
__iterate_interfaces+0x2e1/0x4a0 net/mac80211/util.c:614
ieee80211_iterate_active_interfaces_atomic+0x8d/0x170 net/mac80211/util.c:650
mac80211_hwsim_beacon+0xc9/0x190 drivers/net/wireless/mac80211_hwsim.c:1615
__tasklet_hrtimer_trampoline+0x29/0xa0 kernel/softirq.c:601
tasklet_action_common.constprop.0+0x265/0x360 kernel/softirq.c:522
__do_softirq+0x26c/0x9a0 kernel/softirq.c:292
invoke_softirq kernel/softirq.c:372 [inline]
irq_exit+0x215/0x260 kernel/softirq.c:412
exiting_irq arch/x86/include/asm/apic.h:544 [inline]
smp_apic_timer_interrupt+0x136/0x550 arch/x86/kernel/apic/apic.c:1094
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
</IRQ>
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:789 [inline]
RIP: 0010:mod_delayed_work_on+0x1ab/0x1f0 kernel/workqueue.c:1599
Code: 24 20 48 ba 00 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 75 42 48 83 3d b9 cc b1 08 00 74 1b e8 3a 1b 25 00 4c 89 e7 57 9d <0f> 1f 44 00 00 e9 6f ff ff ff e8 26 1b 25 00 0f 0b e8 1f 1b 25 00
RSP: 0018:ffff8880b4407870 EFLAGS: 00000293 ORIG_RAX: ffffffffffffff13
RAX: ffff8880b4bf86c0 RBX: 0000000000000001 RCX: 1ffff1101697f1f7
RDX: 0000000000000000 RSI: ffffffff813fb356 RDI: 0000000000000293
RBP: 1ffff11016880f0e R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000293
R13: 0000000000000200 R14: ffff88813bfc07c0 R15: 0000000000000000
mod_delayed_work include/linux/workqueue.h:542 [inline]
linkwatch_schedule_work+0xe3/0x170 net/core/link_watch.c:138
linkwatch_fire_event+0x8a/0x280 net/core/link_watch.c:251
netif_carrier_on net/sched/sch_generic.c:517 [inline]
netif_carrier_on+0x90/0xe0 net/sched/sch_generic.c:511
__ieee80211_sta_join_ibss+0xc7a/0x1f30 net/mac80211/ibss.c:395
ieee80211_sta_create_ibss.cold+0xcb/0x12b net/mac80211/ibss.c:1346
ieee80211_sta_find_ibss net/mac80211/ibss.c:1476 [inline]
ieee80211_ibss_work.cold+0x53/0x687 net/mac80211/ibss.c:1700
ieee80211_iface_work+0x7ba/0x8a0 net/mac80211/iface.c:1366
process_one_work+0x864/0x1570 kernel/workqueue.c:2155