[syzbot] [usb-storage?] general protection fault in alauda_transport

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-kernel,org.kernel.vger.linux-usb
Message-ID <[email protected]>
Hello,

syzbot found the following issue on:

HEAD commit:    bdab5605259b usb: gadget: uvc: fix dangling pointers in uv..
git tree:       https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
console output: https://syzkaller.appspot.com/x/log.txt?x=122ed6c6580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=8bdeea7ee6735f91
dashboard link: https://syzkaller.appspot.com/bug?extid=ccc9a7cb39fa1af827ea
compiler:       gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=12012679580000
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=162ed6c6580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/2cb2fdbdd7b7/disk-bdab5605.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/f801d31c2001/vmlinux-bdab5605.xz
kernel image: https://storage.googleapis.com/syzbot-assets/9002a6e0ae14/bzImage-bdab5605.xz

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

Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 0 UID: 0 PID: 6317 Comm: usb-storage Not tainted syzkaller #0 PREEMPT(lazy) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
RIP: 0010:alauda_read_data drivers/usb/storage/alauda.c:972 [inline]
RIP: 0010:alauda_transport+0xfd6/0x35c0 drivers/usb/storage/alauda.c:1187
Code: 48 c1 e9 03 80 3c 31 00 0f 85 ee 1d 00 00 48 8b 0b 8b 54 24 10 48 be 00 00 00 00 00 fc ff df 48 8d 1c 51 48 89 d9 48 c1 e9 03 <0f> b6 34 31 48 89 d9 83 e1 07 83 c1 01 40 38 f1 7c 09 40 84 f6 0f
RSP: 0018:ffffc90002dcf9e0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: dffffc0000000000 RDI: ffff888118ad0920
RBP: 0000000000000240 R08: 0000000000000005 R09: 000000000000001f
R10: 0000000000000009 R11: ffffffff81596b4a R12: 0000000000000001
R13: 0000000000000001 R14: ffff888118ad0900 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff888268633000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f7516ee1254 CR3: 0000000109f36000 CR4: 00000000003506f0
Call Trace:
 <TASK>
 usb_stor_invoke_transport+0xee/0x15d0 drivers/usb/storage/transport.c:611
 usb_stor_control_thread+0x5e4/0xae0 drivers/usb/storage/usb.c:462
 kthread+0x370/0x450 kernel/kthread.c:436
 ret_from_fork+0x69a/0xc80 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:alauda_read_data drivers/usb/storage/alauda.c:972 [inline]
RIP: 0010:alauda_transport+0xfd6/0x35c0 drivers/usb/storage/alauda.c:1187
Code: 48 c1 e9 03 80 3c 31 00 0f 85 ee 1d 00 00 48 8b 0b 8b 54 24 10 48 be 00 00 00 00 00 fc ff df 48 8d 1c 51 48 89 d9 48 c1 e9 03 <0f> b6 34 31 48 89 d9 83 e1 07 83 c1 01 40 38 f1 7c 09 40 84 f6 0f
RSP: 0018:ffffc90002dcf9e0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: dffffc0000000000 RDI: ffff888118ad0920
RBP: 0000000000000240 R08: 0000000000000005 R09: 000000000000001f
R10: 0000000000000009 R11: ffffffff81596b4a R12: 0000000000000001
R13: 0000000000000001 R14: ffff888118ad0900 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff888268733000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fb6f8698060 CR3: 0000000125ff4000 CR4: 00000000003506f0
----------------
Code disassembly (best guess):
   0:	48 c1 e9 03          	shr    $0x3,%rcx
   4:	80 3c 31 00          	cmpb   $0x0,(%rcx,%rsi,1)
   8:	0f 85 ee 1d 00 00    	jne    0x1dfc
   e:	48 8b 0b             	mov    (%rbx),%rcx
  11:	8b 54 24 10          	mov    0x10(%rsp),%edx
  15:	48 be 00 00 00 00 00 	movabs $0xdffffc0000000000,%rsi
  1c:	fc ff df
  1f:	48 8d 1c 51          	lea    (%rcx,%rdx,2),%rbx
  23:	48 89 d9             	mov    %rbx,%rcx
  26:	48 c1 e9 03          	shr    $0x3,%rcx
* 2a:	0f b6 34 31          	movzbl (%rcx,%rsi,1),%esi <-- trapping instruction
  2e:	48 89 d9             	mov    %rbx,%rcx
  31:	83 e1 07             	and    $0x7,%ecx
  34:	83 c1 01             	add    $0x1,%ecx
  37:	40 38 f1             	cmp    %sil,%cl
  3a:	7c 09                	jl     0x45
  3c:	40 84 f6             	test   %sil,%sil
  3f:	0f                   	.byte 0xf


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

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.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
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.