Re: [syzbot] [wireless?] WARNING in nl80211_set_tx_bitrate_mask

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-wireless,org.kernel.vger.linux-kernel,org.kernel.vger.netdev
Message-ID <[email protected]>
syzbot has found a reproducer for the following issue on:

HEAD commit:    8d3ae59288f1 Linux 7.2
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=10dc0679580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=1d67342c314f228d
dashboard link: https://syzkaller.appspot.com/bug?extid=dcaca020ca8377e7ced0
compiler:       gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=11fdd949580000

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

------------[ cut here ]------------
wlan2: Failed check-sdata-in-driver check, flags: 0x0
WARNING: net/mac80211/driver-ops.h:884 at drv_set_bitrate_mask net/mac80211/driver-ops.h:884 [inline], CPU#2: syz-executor202/6039
WARNING: net/mac80211/driver-ops.h:884 at ieee80211_set_bitrate_mask+0x888/0xe20 net/mac80211/cfg.c:4134, CPU#2: syz-executor202/6039
Modules linked in:
CPU: 2 UID: 0 PID: 6039 Comm: syz-executor202 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
RIP: 0010:drv_set_bitrate_mask net/mac80211/driver-ops.h:884 [inline]
RIP: 0010:ieee80211_set_bitrate_mask+0x88f/0xe20 net/mac80211/cfg.c:4134
Code: 02 00 00 e8 23 6b d6 f6 48 8b 34 24 48 81 c6 20 01 00 00 48 89 34 24 e8 0f 6b d6 f6 48 8d 3d c8 80 1f 06 48 8b 34 24 44 89 ea <67> 48 0f b9 3a e9 f7 fd ff ff e8 f2 6a d6 f6 48 8d bb 50 08 00 00
RSP: 0018:ffffc90003c973f0 EFLAGS: 00010293
RAX: 0000000000000000 RBX: ffff88803e5f0740 RCX: ffffffff8b340832
RDX: 0000000000000000 RSI: ffff88805720c120 RDI: ffffffff91538960
RBP: ffff88805720d928 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff88803e5f0740
R13: 0000000000000000 R14: ffff88805720c000 R15: ffffc90003c97488
FS:  000055556bc9e400(0000) GS:ffff8880d5dde000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fee5f7dfe9c CR3: 000000003e24f000 CR4: 0000000000352ef0
Call Trace:
 <TASK>
 rdev_set_bitrate_mask net/wireless/rdev-ops.h:683 [inline]
 nl80211_set_tx_bitrate_mask+0x320/0x570 net/wireless/nl80211.c:14541
 genl_family_rcv_msg_doit+0x214/0x300 net/netlink/genetlink.c:1114
 genl_family_rcv_msg net/netlink/genetlink.c:1194 [inline]
 genl_rcv_msg+0x560/0x800 net/netlink/genetlink.c:1209
 netlink_rcv_skb+0x159/0x420 net/netlink/af_netlink.c:2556
 genl_rcv+0x28/0x40 net/netlink/genetlink.c:1218
 netlink_unicast_kernel net/netlink/af_netlink.c:1319 [inline]
 netlink_unicast+0x585/0x850 net/netlink/af_netlink.c:1345
 netlink_sendmsg+0x8b0/0xda0 net/netlink/af_netlink.c:1900
 sock_sendmsg_nosec net/socket.c:775 [inline]
 __sock_sendmsg net/socket.c:790 [inline]
 __sys_sendto+0x48b/0x4e0 net/socket.c:2252
 __do_sys_sendto net/socket.c:2259 [inline]
 __se_sys_sendto net/socket.c:2255 [inline]
 __x64_sys_sendto+0xe0/0x1c0 net/socket.c:2255
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x115/0x870 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f4b1b84a677
Code: 48 89 fa 4c 89 df e8 98 1d 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 fa 08 75 de e8 23 ff ff ff
RSP: 002b:00007ffe1ffacce0 EFLAGS: 00000202 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 000055556bc9e400 RCX: 00007f4b1b84a677
RDX: 000000000000001c RSI: 00007ffe1ffacd40 RDI: 0000000000000003
RBP: 00007ffe1ffacd40 R08: 00007ffe1ffacd34 R09: 000000000000000c
R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000028
R13: 0000000000000003 R14: 0000000000000026 R15: 00007f4b1b888ed3
 </TASK>
----------------
Code disassembly (best guess):
   0:	02 00                	add    (%rax),%al
   2:	00 e8                	add    %ch,%al
   4:	23 6b d6             	and    -0x2a(%rbx),%ebp
   7:	f6 48 8b 34          	testb  $0x34,-0x75(%rax)
   b:	24 48                	and    $0x48,%al
   d:	81 c6 20 01 00 00    	add    $0x120,%esi
  13:	48 89 34 24          	mov    %rsi,(%rsp)
  17:	e8 0f 6b d6 f6       	call   0xf6d66b2b
  1c:	48 8d 3d c8 80 1f 06 	lea    0x61f80c8(%rip),%rdi        # 0x61f80eb
  23:	48 8b 34 24          	mov    (%rsp),%rsi
  27:	44 89 ea             	mov    %r13d,%edx
* 2a:	67 48 0f b9 3a       	ud1    (%edx),%rdi <-- trapping instruction
  2f:	e9 f7 fd ff ff       	jmp    0xfffffe2b
  34:	e8 f2 6a d6 f6       	call   0xf6d66b2b
  39:	48 8d bb 50 08 00 00 	lea    0x850(%rbx),%rdi


---
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.