syzbot


general protection fault in qca_close

Status: upstream: reported C repro on 2025/02/06 13:10
Subsystems: bluetooth
[Documentation on labels]
Reported-by: syzbot+b9cff96f1ca33356d180@syzkaller.appspotmail.com
First crash: 3d13h, last: 2h36m
Cause bisection: introduced by (bisect log) :
commit c411c62cc13319533b1861e00cedc4883c3bc1bb
Author: Arseniy Krasnov <avkrasnov@salutedevices.com>
Date: Thu Jan 30 18:43:26 2025 +0000

  Bluetooth: hci_uart: fix race during initialization

Crash: BUG: unable to handle kernel NULL pointer dereference in qca_close (log)
Repro: C syz .config
  
Discussions (2)
Title Replies (including bot) Last reply
[PATCH] Bluetooth: hci_ldisc: Clear and shrink the ready bit 1 (1) 2025/02/07 03:55
[syzbot] [bluetooth?] general protection fault in qca_close 0 (2) 2025/02/07 02:38
Last patch testing requests (1)
Created Duration User Patch Repo Result
2025/02/07 02:38 26m lizhi.xu@windriver.com patch linux-next OK log

Sample crash report:
Oops: general protection fault, probably for non-canonical address 0xdffffc000000002b: 0000 [#1] PREEMPT SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000158-0x000000000000015f]
CPU: 1 UID: 0 PID: 5837 Comm: syz-executor233 Not tainted 6.14.0-rc1-next-20250204-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
RIP: 0010:serial_clock_vote drivers/bluetooth/hci_qca.c:301 [inline]
RIP: 0010:qca_close+0x72/0x2e0 drivers/bluetooth/hci_qca.c:723
Code: 64 af f6 f8 48 89 2c 24 42 80 7c 2d 00 00 74 08 4c 89 f7 e8 20 28 5d f9 4d 8b 26 49 8d bc 24 5a 01 00 00 48 89 f8 48 c1 e8 03 <42> 0f b6 04 28 84 c0 4c 89 eb 0f 85 de 01 00 00 45 0f b6 ac 24 5a
RSP: 0018:ffffc90003cb79f0 EFLAGS: 00010206
RAX: 000000000000002b RBX: ffff888012bb2400 RCX: ffff88802e269e00
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000015a
RBP: 1ffff110025764b7 R08: ffffffff8187d8b3 R09: 1ffffffff2860723
R10: dffffc0000000000 R11: ffffffff88c8a130 R12: 0000000000000000
R13: dffffc0000000000 R14: ffff888012bb25b8 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fbb3e1c10d0 CR3: 000000000e738000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 hci_uart_tty_close+0x205/0x290 drivers/bluetooth/hci_ldisc.c:557
 tty_ldisc_kill+0xa3/0x1a0 drivers/tty/tty_ldisc.c:613
 tty_ldisc_release+0x1a1/0x200 drivers/tty/tty_ldisc.c:781
 tty_release_struct+0x2b/0xe0 drivers/tty/tty_io.c:1690
 tty_release+0xd06/0x12c0 drivers/tty/tty_io.c:1861
 __fput+0x3e9/0x9f0 fs/file_table.c:448
 task_work_run+0x24f/0x310 kernel/task_work.c:227
 exit_task_work include/linux/task_work.h:40 [inline]
 do_exit+0xa2a/0x28e0 kernel/exit.c:938
 do_group_exit+0x207/0x2c0 kernel/exit.c:1087
 __do_sys_exit_group kernel/exit.c:1098 [inline]
 __se_sys_exit_group kernel/exit.c:1096 [inline]
 __x64_sys_exit_group+0x3f/0x40 kernel/exit.c:1096
 x64_sys_call+0x26a8/0x26b0 arch/x86/include/generated/asm/syscalls_64.h:232
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fbb3e145c79
Code: Unable to access opcode bytes at 0x7fbb3e145c4f.
RSP: 002b:00007ffe5ba71518 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fbb3e145c79
RDX: 000000000000003c RSI: 00000000000000e7 RDI: 0000000000000000
RBP: 00007fbb3e1c0270 R08: ffffffffffffffb8 R09: 00007ffe5ba71738
R10: 0000000000000000 R11: 0000000000000246 R12: 00007fbb3e1c0270
R13: 0000000000000000 R14: 00007fbb3e1c0cc0 R15: 00007fbb3e117a60
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:serial_clock_vote drivers/bluetooth/hci_qca.c:301 [inline]
RIP: 0010:qca_close+0x72/0x2e0 drivers/bluetooth/hci_qca.c:723
Code: 64 af f6 f8 48 89 2c 24 42 80 7c 2d 00 00 74 08 4c 89 f7 e8 20 28 5d f9 4d 8b 26 49 8d bc 24 5a 01 00 00 48 89 f8 48 c1 e8 03 <42> 0f b6 04 28 84 c0 4c 89 eb 0f 85 de 01 00 00 45 0f b6 ac 24 5a
RSP: 0018:ffffc90003cb79f0 EFLAGS: 00010206
RAX: 000000000000002b RBX: ffff888012bb2400 RCX: ffff88802e269e00
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000015a
RBP: 1ffff110025764b7 R08: ffffffff8187d8b3 R09: 1ffffffff2860723
R10: dffffc0000000000 R11: ffffffff88c8a130 R12: 0000000000000000
R13: dffffc0000000000 R14: ffff888012bb25b8 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fbb3e1c10d0 CR3: 000000000e738000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
   0:	64 af                	fs scas %es:(%rdi),%eax
   2:	f6 f8                	idiv   %al
   4:	48 89 2c 24          	mov    %rbp,(%rsp)
   8:	42 80 7c 2d 00 00    	cmpb   $0x0,0x0(%rbp,%r13,1)
   e:	74 08                	je     0x18
  10:	4c 89 f7             	mov    %r14,%rdi
  13:	e8 20 28 5d f9       	call   0xf95d2838
  18:	4d 8b 26             	mov    (%r14),%r12
  1b:	49 8d bc 24 5a 01 00 	lea    0x15a(%r12),%rdi
  22:	00
  23:	48 89 f8             	mov    %rdi,%rax
  26:	48 c1 e8 03          	shr    $0x3,%rax
* 2a:	42 0f b6 04 28       	movzbl (%rax,%r13,1),%eax <-- trapping instruction
  2f:	84 c0                	test   %al,%al
  31:	4c 89 eb             	mov    %r13,%rbx
  34:	0f 85 de 01 00 00    	jne    0x218
  3a:	45                   	rex.RB
  3b:	0f                   	.byte 0xf
  3c:	b6 ac                	mov    $0xac,%dh
  3e:	24 5a                	and    $0x5a,%al

Crashes (26):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/02/04 14:54 linux-next 40b8e93e17bf 8f267cef .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 14:29 linux-next 40b8e93e17bf 8f267cef .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 13:46 linux-next 40b8e93e17bf 8f267cef .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 16:19 linux-next ed58d103e6da a4f327c2 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 16:19 linux-next ed58d103e6da a4f327c2 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 04:45 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 04:45 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 04:24 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 04:24 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 03:37 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 03:37 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 03:06 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/07 03:06 linux-next 808eb958781e 53657d1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/05 12:40 linux-next ed88b8b82c53 5896748e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/05 11:36 linux-next ed88b8b82c53 5896748e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/05 11:20 linux-next ed88b8b82c53 5896748e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/05 00:13 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/05 00:12 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 23:50 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 23:50 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 23:31 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 23:31 linux-next 40b8e93e17bf 4baca3d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 09:29 linux-next 40b8e93e17bf 8f267cef .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 08:29 linux-next 40b8e93e17bf 8f267cef .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 05:54 linux-next 40b8e93e17bf 8f267cef .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
2025/02/04 05:54 linux-next 40b8e93e17bf 8f267cef .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root general protection fault in qca_close
* Struck through repros no longer work on HEAD.