================================================================== BUG: KASAN: slab-out-of-bounds in ath9k_hif_usb_rx_stream drivers/net/wireless/ath/ath9k/hif_usb.c:627 [inline] BUG: KASAN: slab-out-of-bounds in ath9k_hif_usb_rx_cb+0xdb4/0x1050 drivers/net/wireless/ath/ath9k/hif_usb.c:671 Read of size 4 at addr ffff8881cd8cc090 by task syz-executor.1/8685 CPU: 0 PID: 8685 Comm: syz-executor.1 Not tainted 5.8.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0xf6/0x16e lib/dump_stack.c:118 print_address_description.constprop.0.cold+0xd3/0x415 mm/kasan/report.c:383 __kasan_report mm/kasan/report.c:513 [inline] kasan_report.cold+0x37/0x7c mm/kasan/report.c:530 ath9k_hif_usb_rx_stream drivers/net/wireless/ath/ath9k/hif_usb.c:627 [inline] ath9k_hif_usb_rx_cb+0xdb4/0x1050 drivers/net/wireless/ath/ath9k/hif_usb.c:671 __usb_hcd_giveback_urb+0x29a/0x550 drivers/usb/core/hcd.c:1650 usb_hcd_giveback_urb+0x368/0x420 drivers/usb/core/hcd.c:1716 dummy_timer+0x125e/0x32b4 drivers/usb/gadget/udc/dummy_hcd.c:1967 call_timer_fn+0x1ac/0x6e0 kernel/time/timer.c:1404 expire_timers kernel/time/timer.c:1449 [inline] __run_timers kernel/time/timer.c:1773 [inline] __run_timers kernel/time/timer.c:1740 [inline] run_timer_softirq+0x5e5/0x14c0 kernel/time/timer.c:1786 __do_softirq+0x21e/0x996 kernel/softirq.c:292 asm_call_on_stack+0xf/0x20 arch/x86/entry/entry_64.S:711 __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline] run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline] do_softirq_own_stack+0x109/0x140 arch/x86/kernel/irq_64.c:77 invoke_softirq kernel/softirq.c:387 [inline] __irq_exit_rcu kernel/softirq.c:417 [inline] irq_exit_rcu+0x16f/0x1a0 kernel/softirq.c:429 sysvec_apic_timer_interrupt+0xd3/0x1b0 arch/x86/kernel/apic/apic.c:1091 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:596 RIP: 0010:kasan_mem_to_shadow include/linux/kasan.h:28 [inline] RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:135 [inline] RIP: 0010:memory_is_poisoned mm/kasan/generic.c:165 [inline] RIP: 0010:check_memory_region_inline mm/kasan/generic.c:183 [inline] RIP: 0010:check_memory_region+0x45/0x1d0 mm/kasan/generic.c:192 Code: 00 e9 b5 00 00 00 48 b8 00 00 00 00 00 00 00 ff 48 39 f8 0f 87 3a 01 00 00 49 83 ea 01 48 89 fb 48 b8 00 00 00 00 00 fc ff df <4d> 89 d3 48 c1 eb 03 49 c1 eb 03 48 01 c3 49 01 c3 48 89 d8 49 8d RSP: 0018:ffff8881ca9ff508 EFLAGS: 00000282 RAX: dffffc0000000000 RBX: ffffea0006a34dc0 RCX: ffffffff81537dd4 RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffea0006a34dc0 RBP: ffffea0006a34dc0 R08: ffff8881ca799900 R09: fffff94000d469b9 R10: ffffea0006a34dc7 R11: fffff94000d469b8 R12: 0000000000000000 R13: ffffea0006a34dc8 R14: dead000000000100 R15: ffffea0006a34dc0 instrument_atomic_read include/linux/instrumented.h:56 [inline] test_bit include/asm-generic/bitops/instrumented-non-atomic.h:110 [inline] PageLRU include/linux/page-flags.h:328 [inline] lru_cache_add+0xf4/0x800 mm/swap.c:468 wp_page_copy+0x972/0x2800 mm/memory.c:2714 do_wp_page+0x2cd/0x1af0 mm/memory.c:2981 handle_pte_fault mm/memory.c:4232 [inline] __handle_mm_fault mm/memory.c:4346 [inline] handle_mm_fault+0x1dac/0x3510 mm/memory.c:4383 do_user_addr_fault arch/x86/mm/fault.c:1295 [inline] handle_page_fault arch/x86/mm/fault.c:1365 [inline] exc_page_fault+0x548/0x12c0 arch/x86/mm/fault.c:1418 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:565 RIP: 0010:copy_user_enhanced_fast_string+0xe/0x30 arch/x86/lib/copy_user_64.S:205 Code: 89 d1 c1 e9 03 83 e2 07 f3 48 a5 89 d1 f3 a4 31 c0 0f 1f 00 c3 0f 1f 80 00 00 00 00 0f 1f 00 83 fa 40 0f 82 70 ff ff ff 89 d1 a4 31 c0 0f 1f 00 c3 66 2e 0f 1f 84 00 00 00 00 00 89 d1 f3 a4 RSP: 0018:ffff8881ca9ff9b8 EFLAGS: 00010206 RAX: 0000000000000001 RBX: 0000000000001000 RCX: 0000000000000200 RDX: 0000000000001000 RSI: ffff8881a401ce00 RDI: 0000000020ef3000 RBP: 0000000020ef2200 R08: ffffed1034803a00 R09: 0000000000000000 R10: ffff8881a401cfff R11: ffffed10348039ff R12: ffff8881a401c000 R13: 0000000020ef3200 R14: 00007ffffffff000 R15: 0000000000000000 copy_user_generic arch/x86/include/asm/uaccess_64.h:37 [inline] raw_copy_to_user arch/x86/include/asm/uaccess_64.h:74 [inline] copyout+0x107/0x140 lib/iov_iter.c:143 copy_page_to_iter_iovec lib/iov_iter.c:212 [inline] copy_page_to_iter+0x42c/0xeb0 lib/iov_iter.c:921 generic_file_buffered_read+0xcc0/0x2570 mm/filemap.c:2126 generic_file_read_iter+0x346/0x490 mm/filemap.c:2307 ext4_file_read_iter fs/ext4/file.c:131 [inline] ext4_file_read_iter+0x181/0x430 fs/ext4/file.c:114 call_read_iter include/linux/fs.h:1901 [inline] new_sync_read+0x41e/0x6d0 fs/read_write.c:415 __vfs_read+0xc9/0x100 fs/read_write.c:428 vfs_read+0x1f0/0x420 fs/read_write.c:462 ksys_read+0x12d/0x250 fs/read_write.c:588 do_syscall_64+0x50/0x90 arch/x86/entry/common.c:359 entry_SYSCALL_64_after_hwframe+0x44/0xa9 RIP: 0033:0x45ca59 Code: Bad RIP value. RSP: 002b:00007f87a28dfc78 EFLAGS: 00000246 ORIG_RAX: 0000000000000000 RAX: ffffffffffffffda RBX: 00000000004fb860 RCX: 000000000045ca59 RDX: 00000000ffffffad RSI: 0000000020003200 RDI: 0000000000000007 RBP: 000000000078bfa0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 000000000000089a R14: 00000000004cb7c0 R15: 00007f87a28e06d4 Allocated by task 0: (stack is not available) Freed by task 0: (stack is not available) The buggy address belongs to the object at ffff8881cd8cb300 which belongs to the cache biovec-max of size 4096 The buggy address is located 3472 bytes inside of 4096-byte region [ffff8881cd8cb300, ffff8881cd8cc300) The buggy address belongs to the page: page:ffffea0007363200 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 head:ffffea0007363200 order:3 compound_mapcount:0 compound_pincount:0 flags: 0x200000000010200(slab|head) raw: 0200000000010200 dead000000000100 dead000000000122 ffff8881da383400 raw: 0000000000000000 0000000080070007 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8881cd8cbf80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8881cd8cc000: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8881cd8cc080: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff8881cd8cc100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8881cd8cc180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ==================================================================