================================================================== BUG: KASAN: use-after-free in v4l2_fh_init drivers/media/v4l2-core/v4l2-fh.c:25 [inline] BUG: KASAN: use-after-free in v4l2_fh_open+0xc6/0x430 drivers/media/v4l2-core/v4l2-fh.c:63 Read of size 8 at addr ffff88807cdcc900 by task v4l_id/5418 CPU: 0 PID: 5418 Comm: v4l_id Not tainted syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025 Call Trace: dump_stack_lvl+0x168/0x230 lib/dump_stack.c:106 print_address_description+0x60/0x2d0 mm/kasan/report.c:248 __kasan_report mm/kasan/report.c:434 [inline] kasan_report+0xdf/0x130 mm/kasan/report.c:451 v4l2_fh_init drivers/media/v4l2-core/v4l2-fh.c:25 [inline] v4l2_fh_open+0xc6/0x430 drivers/media/v4l2-core/v4l2-fh.c:63 em28xx_v4l2_open+0x152/0x990 drivers/media/usb/em28xx/em28xx-video.c:2163 v4l2_open+0x20b/0x360 drivers/media/v4l2-core/v4l2-dev.c:427 chrdev_open+0x597/0x670 fs/char_dev.c:414 do_dentry_open+0x7ff/0xf80 fs/open.c:826 do_open fs/namei.c:3616 [inline] path_openat+0x2682/0x2f30 fs/namei.c:3750 do_filp_open+0x1b3/0x3e0 fs/namei.c:3777 do_sys_openat2+0x142/0x4a0 fs/open.c:1255 do_sys_open fs/open.c:1271 [inline] __do_sys_openat fs/open.c:1287 [inline] __se_sys_openat fs/open.c:1282 [inline] __x64_sys_openat+0x135/0x160 fs/open.c:1282 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:0x7fcc426a8407 Code: 48 89 fa 4c 89 df e8 38 aa 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 fa 08 75 de e8 23 ff ff ff RSP: 002b:00007ffe0234ea60 EFLAGS: 00000202 ORIG_RAX: 0000000000000101 RAX: ffffffffffffffda RBX: 00007fcc425ba880 RCX: 00007fcc426a8407 RDX: 0000000000000000 RSI: 00007ffe0234ef1b RDI: ffffffffffffff9c RBP: 0000000000000002 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000000 R13: 00007ffe0234ecb0 R14: 00007fcc42e36000 R15: 0000564047c264d8 Allocated by task 0: (stack is not available) The buggy address belongs to the object at ffff88807cdcc680 which belongs to the cache dio of size 704 The buggy address is located 640 bytes inside of 704-byte region [ffff88807cdcc680, ffff88807cdcc940) The buggy address belongs to the page: page:ffffea0001f37300 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x7cdcc head:ffffea0001f37300 order:2 compound_mapcount:0 compound_pincount:0 flags: 0xfff00000010200(slab|head|node=0|zone=1|lastcpupid=0x7ff) raw: 00fff00000010200 0000000000000000 dead000000000122 ffff88801d953500 raw: 0000000000000000 0000000080130013 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 2, migratetype Unmovable, gfp_mask 0x1d20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC|__GFP_HARDWALL), pid 5416, ts 112924362192, free_ts 112752932557 prep_new_page mm/page_alloc.c:2426 [inline] get_page_from_freelist+0x1b77/0x1c60 mm/page_alloc.c:4192 __alloc_pages+0x1e1/0x470 mm/page_alloc.c:5487 alloc_slab_page mm/slub.c:1780 [inline] allocate_slab mm/slub.c:1917 [inline] new_slab+0xc0/0x4b0 mm/slub.c:1980 ___slab_alloc+0x81e/0xdf0 mm/slub.c:3013 __slab_alloc mm/slub.c:3100 [inline] slab_alloc_node mm/slub.c:3191 [inline] slab_alloc mm/slub.c:3233 [inline] kmem_cache_alloc+0x195/0x290 mm/slub.c:3238 do_blockdev_direct_IO fs/direct-io.c:1156 [inline] __blockdev_direct_IO+0x271/0x3c90 fs/direct-io.c:1368 blockdev_direct_IO include/linux/fs.h:3345 [inline] hfsplus_direct_IO+0x119/0x220 fs/hfsplus/inode.c:135 generic_file_read_iter+0x2be/0x490 mm/filemap.c:2772 call_read_iter include/linux/fs.h:2167 [inline] generic_file_splice_read+0x3a2/0x590 fs/splice.c:311 do_splice_to fs/splice.c:807 [inline] splice_direct_to_actor+0x417/0xbd0 fs/splice.c:881 do_splice_direct+0x1b6/0x2c0 fs/splice.c:1008 do_sendfile+0x5d5/0xec0 fs/read_write.c:1249 __do_sys_sendfile64 fs/read_write.c:1317 [inline] __se_sys_sendfile64+0x13b/0x190 fs/read_write.c:1303 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 page last free stack trace: reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1340 [inline] free_pcp_prepare mm/page_alloc.c:1391 [inline] free_unref_page_prepare+0x637/0x6c0 mm/page_alloc.c:3317 free_unref_page+0x94/0x280 mm/page_alloc.c:3396 free_nonslab_page+0xe2/0x150 mm/slub.c:3540 em28xx_free_v4l2 drivers/media/usb/em28xx/em28xx-video.c:2128 [inline] kref_put include/linux/kref.h:65 [inline] em28xx_v4l2_init+0x1649/0x2e50 drivers/media/usb/em28xx/em28xx-video.c:2911 em28xx_init_extension+0x118/0x1b0 drivers/media/usb/em28xx/em28xx-core.c:1126 process_one_work+0x863/0x1000 kernel/workqueue.c:2310 process_scheduled_works kernel/workqueue.c:2373 [inline] worker_thread+0xd76/0x12a0 kernel/workqueue.c:2462 kthread+0x436/0x520 kernel/kthread.c:334 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287 Memory state around the buggy address: ffff88807cdcc800: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff88807cdcc880: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff88807cdcc900: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff88807cdcc980: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff88807cdcca00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ==================================================================