[v5.15] BUG: unable to handle kernel paging request in ft260_i2c_xfer

3 views
Skip to first unread message

syzbot

unread,
Jul 27, 2025, 7:42:41 AM7/27/25
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: c79648372d02 Linux 5.15.189
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=14a118a2580000
kernel config: https://syzkaller.appspot.com/x/.config?x=9e47345638b85bd0
dashboard link: https://syzkaller.appspot.com/bug?extid=8fdd2a82bb6d01852369
compiler: Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7
userspace arch: arm64

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/7ab49562317a/disk-c7964837.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/e847ec1e38d3/vmlinux-c7964837.xz
kernel image: https://storage.googleapis.com/syzbot-assets/263158c6371c/Image-c7964837.gz.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+8fdd2a...@syzkaller.appspotmail.com

udc-core: couldn't find an available UDC or it's busy
misc raw-gadget: fail, usb_gadget_probe_driver returned -19
Unable to handle kernel paging request at virtual address dfff8000000000fd
Mem abort info:
ESR = 0x0000000096000006
EC = 0x25: DABT (current EL), IL = 32 bits
SET = 0, FnV = 0
EA = 0, S1PTW = 0
FSC = 0x06: level 2 translation fault
Data abort info:
ISV = 0, ISS = 0x00000006
CM = 0, WnR = 0
[dfff8000000000fd] address between user and kernel address ranges
Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 4222 Comm: syz.2.20 Not tainted 5.15.189-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : ft260_i2c_xfer+0xa8/0x58c drivers/hid/hid-ft260.c:561
lr : ft260_i2c_xfer+0x84/0x58c drivers/hid/hid-ft260.c:558
sp : ffff80001fbf79c0
x29: ffff80001fbf7a70 x28: dfff800000000000 x27: 0000000000000001
x26: 00000000000007e8 x25: ffff0000c950b200 x24: ffff0000d7c781ac
x23: dfff800000000000 x22: 1ffff00003f7ef40 x21: 00000000000000fd
x20: ffff80000ed1b390 x19: 0000000000000000 x18: 0000000000000000
x17: ffff800016d04000 x16: ffff8000082c0bc8 x15: ffff8000167e4500
x14: ffff0000c6a14080 x13: dfff800000000000 x12: 0000000000080000
x11: 00000000000026b8 x10: ffff8000241ca000 x9 : ffff80000ed1b414
x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
x5 : ffff800016ed8d90 x4 : 0000000000000000 x3 : 0000000000000010
x2 : 0000000000000001 x1 : ffff0000c950b200 x0 : ffff0000d7c78080
Call trace:
ft260_i2c_xfer+0xa8/0x58c drivers/hid/hid-ft260.c:561
__i2c_transfer+0x614/0x1fdc drivers/i2c/i2c-core-base.c:-1
i2c_transfer+0x1c8/0x2e4 drivers/i2c/i2c-core-base.c:2330
i2cdev_ioctl_rdwr+0x314/0x68c drivers/i2c/i2c-dev.c:297
i2cdev_ioctl+0x7a8/0x9a4 drivers/i2c/i2c-dev.c:458
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:874 [inline]
__se_sys_ioctl fs/ioctl.c:860 [inline]
__arm64_sys_ioctl+0x14c/0x1c8 fs/ioctl.c:860
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
el0_svc+0x78/0x1e0 arch/arm64/kernel/entry-common.c:608
el0t_64_sync_handler+0xcc/0xe4 arch/arm64/kernel/entry-common.c:626
el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Code: 966c85ee f9400273 911fa27a d343ff55 (387c6aa8)
---[ end trace a934b50eacbf2ca5 ]---
----------------
Code disassembly (best guess):
0: 966c85ee bl 0xfffffffff9b217b8
4: f9400273 ldr x19, [x19]
8: 911fa27a add x26, x19, #0x7e8
c: d343ff55 lsr x21, x26, #3
* 10: 387c6aa8 ldrb w8, [x21, x28] <-- trapping instruction


---
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 syzk...@googlegroups.com.

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 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

syzbot

unread,
Aug 9, 2025, 8:31:26 PM8/9/25
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: c79648372d02 Linux 5.15.189
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=165b09a2580000
kernel config: https://syzkaller.appspot.com/x/.config?x=f3b1215b3cf4119f
dashboard link: https://syzkaller.appspot.com/bug?extid=8fdd2a82bb6d01852369
compiler: Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17fafea2580000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1607d434580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/fa511d2a8893/disk-c7964837.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/f14b6c77bbb9/vmlinux-c7964837.xz
kernel image: https://storage.googleapis.com/syzbot-assets/388987ba15c6/bzImage-c7964837.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+8fdd2a...@syzkaller.appspotmail.com

general protection fault, probably for non-canonical address 0xdffffc00000000fa: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x00000000000007d0-0x00000000000007d7]
CPU: 0 PID: 4694 Comm: syz.1.153 Not tainted 5.15.189-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:ft260_i2c_xfer+0xa7/0x650 drivers/hid/hid-ft260.c:561
Code: d8 48 c1 e8 03 42 80 3c 20 00 74 08 48 89 df e8 4f 20 6c fa 48 8b 03 48 89 44 24 20 48 8d 98 d0 07 00 00 49 89 dd 49 c1 ed 03 <43> 80 7c 25 00 00 74 08 48 89 df e8 29 20 6c fa 48 89 5c 24 28 48
RSP: 0018:ffffc9000c5bfa80 EFLAGS: 00010206
RAX: 0000000000000000 RBX: 00000000000007d0 RCX: ffff888029768000
RDX: 0000000000000000 RSI: ffff88801b908fa0 RDI: ffff88805e180028
RBP: ffffc9000c5bfb70 R08: dffffc0000000000 R09: ffffed100bc300d2
R10: ffffed100bc300d2 R11: 1ffff1100bc300d1 R12: dffffc0000000000
R13: 00000000000000fa R14: ffff88801b908fa0 R15: 1ffff920018b7f5c
FS: 000055555e70b500(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000002580 CR3: 00000000723cb000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
__i2c_transfer+0x864/0x2060 drivers/i2c/i2c-core-base.c:-1
i2c_transfer+0x24c/0x390 drivers/i2c/i2c-core-base.c:2330
i2cdev_ioctl_rdwr+0x3da/0x6c0 drivers/i2c/i2c-dev.c:297
i2cdev_ioctl+0x5ba/0x750 drivers/i2c/i2c-dev.c:458
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:874 [inline]
__se_sys_ioctl+0xfa/0x170 fs/ioctl.c:860
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f442222bbe9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fff8b151a08 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f4422452fa0 RCX: 00007f442222bbe9
RDX: 0000200000002580 RSI: 0000000000000707 RDI: 0000000000000007
RBP: 00007f44222aee19 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f4422452fa0 R14: 00007f4422452fa0 R15: 0000000000000003
</TASK>
Modules linked in:
---[ end trace cffa0638f1ed5d15 ]---
RIP: 0010:ft260_i2c_xfer+0xa7/0x650 drivers/hid/hid-ft260.c:561
Code: d8 48 c1 e8 03 42 80 3c 20 00 74 08 48 89 df e8 4f 20 6c fa 48 8b 03 48 89 44 24 20 48 8d 98 d0 07 00 00 49 89 dd 49 c1 ed 03 <43> 80 7c 25 00 00 74 08 48 89 df e8 29 20 6c fa 48 89 5c 24 28 48
RSP: 0018:ffffc9000c5bfa80 EFLAGS: 00010206
RAX: 0000000000000000 RBX: 00000000000007d0 RCX: ffff888029768000
RDX: 0000000000000000 RSI: ffff88801b908fa0 RDI: ffff88805e180028
RBP: ffffc9000c5bfb70 R08: dffffc0000000000 R09: ffffed100bc300d2
R10: ffffed100bc300d2 R11: 1ffff1100bc300d1 R12: dffffc0000000000
R13: 00000000000000fa R14: ffff88801b908fa0 R15: 1ffff920018b7f5c
FS: 000055555e70b500(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000002580 CR3: 00000000723cb000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: d8 48 c1 fmuls -0x3f(%rax)
3: e8 03 42 80 3c call 0x3c80420b
8: 20 00 and %al,(%rax)
a: 74 08 je 0x14
c: 48 89 df mov %rbx,%rdi
f: e8 4f 20 6c fa call 0xfa6c2063
14: 48 8b 03 mov (%rbx),%rax
17: 48 89 44 24 20 mov %rax,0x20(%rsp)
1c: 48 8d 98 d0 07 00 00 lea 0x7d0(%rax),%rbx
23: 49 89 dd mov %rbx,%r13
26: 49 c1 ed 03 shr $0x3,%r13
* 2a: 43 80 7c 25 00 00 cmpb $0x0,0x0(%r13,%r12,1) <-- trapping instruction
30: 74 08 je 0x3a
32: 48 89 df mov %rbx,%rdi
35: e8 29 20 6c fa call 0xfa6c2063
3a: 48 89 5c 24 28 mov %rbx,0x28(%rsp)
3f: 48 rex.W


---
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.
Reply all
Reply to author
Forward
0 new messages