syzbot


KASAN: vmalloc-out-of-bounds Write in i801_isr (2)

Status: auto-closed as invalid on 2021/03/30 16:34
Subsystems: i2c
[Documentation on labels]
Reported-by: syzbot+33f6c360821c399d69eb@syzkaller.appspotmail.com
First crash: 1547d, last: 1458d
Discussions (8)
Title Replies (including bot) Last reply
[PATCH 5.10 000/252] 5.10.42-rc1 review 268 (268) 2021/07/29 07:58
[PATCH 5.12 000/296] 5.12.9-rc1 review 303 (303) 2021/06/02 02:25
[PATCH 5.4 000/177] 5.4.124-rc1 review 185 (185) 2021/06/02 02:24
[PATCH 4.19 000/116] 4.19.193-rc1 review 122 (122) 2021/06/02 02:23
[PATCH 4.14 00/79] 4.14.235-rc1 review 83 (83) 2021/06/02 01:46
[PATCH 4.9 00/66] 4.9.271-rc1 review 69 (69) 2021/06/01 02:13
[PATCH 4.4 00/54] 4.4.271-rc1 review 59 (59) 2021/05/31 21:43
KASAN: vmalloc-out-of-bounds Write in i801_isr (2) 0 (1) 2020/08/27 08:29
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KASAN: vmalloc-out-of-bounds Write in i801_isr i2c 1 1774d 1773d 0/28 auto-closed as invalid on 2020/05/12 04:20

Sample crash report:
==================================================================
BUG: KASAN: vmalloc-out-of-bounds in i801_isr_byte_done drivers/i2c/busses/i2c-i801.c:595 [inline]
BUG: KASAN: vmalloc-out-of-bounds in i801_isr drivers/i2c/busses/i2c-i801.c:666 [inline]
BUG: KASAN: vmalloc-out-of-bounds in i801_isr+0xcfe/0xd60 drivers/i2c/busses/i2c-i801.c:647
Write of size 1 at addr ffffc900008c7dc2 by task syz-executor.3/10200

CPU: 1 PID: 10200 Comm: syz-executor.3 Not tainted 5.10.0-rc5-syzkaller #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.12.0-59-gc9ba5276e321-prebuilt.qemu.org 04/01/2014
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x107/0x163 lib/dump_stack.c:118
 print_address_description.constprop.0.cold+0x5/0x497 mm/kasan/report.c:385
 __kasan_report mm/kasan/report.c:545 [inline]
 kasan_report.cold+0x1f/0x37 mm/kasan/report.c:562
 i801_isr_byte_done drivers/i2c/busses/i2c-i801.c:595 [inline]
 i801_isr drivers/i2c/busses/i2c-i801.c:666 [inline]
 i801_isr+0xcfe/0xd60 drivers/i2c/busses/i2c-i801.c:647
 __handle_irq_event_percpu+0x303/0x8f0 kernel/irq/handle.c:156
 handle_irq_event_percpu kernel/irq/handle.c:196 [inline]
 handle_irq_event+0x102/0x290 kernel/irq/handle.c:213
 handle_fasteoi_irq+0x22f/0x9f0 kernel/irq/chip.c:714
 run_irq_on_irqstack_cond arch/x86/include/asm/irq_stack.h:103 [inline]
 handle_irq arch/x86/kernel/irq.c:230 [inline]
 __common_interrupt arch/x86/kernel/irq.c:249 [inline]
 common_interrupt+0x96/0x200 arch/x86/kernel/irq.c:239
 asm_common_interrupt+0x1e/0x40 arch/x86/include/asm/idtentry.h:622
RIP: 0010:ffs arch/x86/include/asm/bitops.h:297 [inline]
RIP: 0010:__do_softirq+0x194/0x9f6 kernel/softirq.c:286
Code: 48 89 44 24 28 48 c7 c7 60 11 4a 89 e8 a5 7b c6 ff 65 66 c7 05 bb 3e e3 76 00 00 e8 96 d3 55 f8 fb 48 c7 44 24 08 c0 a0 00 8b <b8> ff ff ff ff 41 0f bc c7 83 c0 01 89 44 24 04 75 40 e9 e1 02 00
RSP: 0018:ffffc900004e8f80 EFLAGS: 00000206
RAX: 000000000000039c RBX: ffff8880138757c0 RCX: ffffffff8155b937
RDX: 0000000000000000 RSI: 0000000000000102 RDI: 0000000000000000
RBP: ffffc900013d7620 R08: 0000000000000001 R09: ffffffff8eccf707
R10: fffffbfff1d99ee0 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000202
 asm_call_irq_on_stack+0xf/0x20
 </IRQ>
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
 do_softirq_own_stack+0xaa/0xd0 arch/x86/kernel/irq_64.c:77
 invoke_softirq kernel/softirq.c:393 [inline]
 __irq_exit_rcu kernel/softirq.c:423 [inline]
 irq_exit_rcu+0x132/0x200 kernel/softirq.c:435
 sysvec_apic_timer_interrupt+0x4d/0x100 arch/x86/kernel/apic/apic.c:1091
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:631
RIP: 0010:lock_is_held_type+0xc2/0x100 kernel/locking/lockdep.c:5481
Code: 03 44 39 f0 41 0f 94 c4 48 c7 c7 c0 5e 4b 89 e8 d4 0b 00 00 b8 ff ff ff ff 65 0f c1 05 a7 8f 1b 77 83 f8 01 75 23 ff 34 24 9d <48> 83 c4 08 44 89 e0 5b 5d 41 5c 41 5d 41 5e 41 5f c3 45 31 e4 eb
RSP: 0018:ffffc900013d7728 EFLAGS: 00000202
RAX: 0000000000000001 RBX: 0000000000000003 RCX: 1ffffffff19da223
RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000
RBP: ffffffff8b3376e0 R08: 0000000000000000 R09: ffffffff8cecdf4f
R10: fffffbfff19d9be9 R11: 0000000000000000 R12: 0000000000000000
R13: ffff8880138760d8 R14: 00000000ffffffff R15: ffff888013876128
 lock_is_held include/linux/lockdep.h:271 [inline]
 rcu_read_lock_sched_held+0x3a/0x70 kernel/rcu/update.c:123
 trace_lock_release include/trace/events/lock.h:58 [inline]
 lock_release+0x5b7/0x710 kernel/locking/lockdep.c:5448
 __raw_spin_unlock include/linux/spinlock_api_smp.h:150 [inline]
 _raw_spin_unlock+0x12/0x40 kernel/locking/spinlock.c:183
 spin_unlock include/linux/spinlock.h:394 [inline]
 __d_add fs/dcache.c:2683 [inline]
 d_splice_alias+0x4c1/0xc60 fs/dcache.c:3065
 proc_pident_instantiate+0x235/0x310 fs/proc/base.c:2620
 proc_pident_lookup+0x1ec/0x270 fs/proc/base.c:2642
 lookup_open.isra.0+0x7ee/0x1350 fs/namei.c:3083
 open_last_lookups fs/namei.c:3178 [inline]
 path_openat+0x96d/0x2730 fs/namei.c:3366
 do_filp_open+0x17e/0x3c0 fs/namei.c:3396
 do_sys_openat2+0x16d/0x420 fs/open.c:1168
 do_sys_open fs/open.c:1184 [inline]
 __do_sys_open fs/open.c:1192 [inline]
 __se_sys_open fs/open.c:1188 [inline]
 __x64_sys_open+0x119/0x1c0 fs/open.c:1188
 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x4172c1
Code: 75 14 b8 02 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 44 19 00 00 c3 48 83 ec 08 e8 6a fa ff ff 48 89 04 24 b8 02 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 b3 fa ff ff 48 89 d0 48 83 c4 08 48 3d 01
RSP: 002b:00007fffd1dd2930 EFLAGS: 00000293 ORIG_RAX: 0000000000000002
RAX: ffffffffffffffda RBX: 00007fffd1dd2964 RCX: 00000000004172c1
RDX: 00007fffd1dd296a RSI: 0000000000080001 RDI: 00000000004aa6bf
RBP: 00007fffd1dd2960 R08: 0000000000000000 R09: 0000000000000004
R10: 0000000000000000 R11: 0000000000000293 R12: 00000000004aa6bf
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000


Memory state around the buggy address:
 ffffc900008c7c80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
 ffffc900008c7d00: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
>ffffc900008c7d80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
                                           ^
 ffffc900008c7e00: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
 ffffc900008c7e80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
==================================================================

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/11/24 01:22 upstream d5beb3140f91 878fb17a .config console log report info ci-qemu-upstream
2020/09/17 20:56 upstream 4cbffc461ec9 8247808b .config console log report info ci-qemu-upstream
2020/09/15 11:51 upstream fc4f28bb3daf 6989d6f6 .config console log report info ci-qemu-upstream
2020/08/27 07:27 upstream fffe3ae0ee84 816e0689 .config console log report ci-qemu-upstream
2020/09/01 22:38 upstream b765a32a2e91 abf9ba4f .config console log report ci-qemu-upstream-386
2020/09/01 18:26 upstream b51594df17d0 abf9ba4f .config console log report ci-qemu-upstream-386
2020/08/27 06:41 upstream 15bc20c6af4c 816e0689 .config console log report ci-qemu-upstream-386
* Struck through repros no longer work on HEAD.