I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 ================================================================== BUG: KCSAN: data-race in data_push_tail / string write to 0xffffffff86e3fe0a of 1 bytes by task 15840 on cpu 1: string_nocheck lib/vsprintf.c:647 [inline] string+0x17b/0x220 lib/vsprintf.c:725 vsnprintf+0xb57/0xe80 lib/vsprintf.c:2806 vscnprintf+0x3e/0x80 lib/vsprintf.c:2912 printk_sprint kernel/printk/printk.c:2099 [inline] vprintk_store+0x61d/0xb40 kernel/printk/printk.c:2209 vprintk_emit+0xcc/0x430 kernel/printk/printk.c:2256 vprintk_default+0x22/0x30 kernel/printk/printk.c:2283 vprintk+0x7f/0x90 kernel/printk/printk_safe.c:50 _printk+0x76/0x96 kernel/printk/printk.c:2293 check_partition block/partitions/core.c:159 [inline] blk_add_partitions block/partitions/core.c:608 [inline] bdev_disk_changed+0x9dd/0xc30 block/partitions/core.c:694 loop_reread_partitions drivers/block/loop.c:517 [inline] loop_set_status+0x4ee/0x590 drivers/block/loop.c:1304 lo_ioctl+0x810/0x11b0 blkdev_ioctl+0x20e/0x440 block/ioctl.c:588 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:870 [inline] __se_sys_ioctl+0xcb/0x140 fs/ioctl.c:856 __x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:856 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x2b/0x70 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffffffff86e3fe08 of 8 bytes by task 1441 on cpu 0: data_make_reusable kernel/printk/printk_ringbuffer.c:590 [inline] data_push_tail+0x10f/0x440 kernel/printk/printk_ringbuffer.c:675 data_alloc+0xbc/0x2b0 kernel/printk/printk_ringbuffer.c:1046 prb_reserve+0x897/0xbd0 kernel/printk/printk_ringbuffer.c:1555 vprintk_store+0x54d/0xb40 kernel/printk/printk.c:2199 vprintk_emit+0xcc/0x430 kernel/printk/printk.c:2256 vprintk_default+0x22/0x30 kernel/printk/printk.c:2283 vprintk+0x7f/0x90 kernel/printk/printk_safe.c:50 _printk+0x76/0x96 kernel/printk/printk.c:2293 blk_print_req_error+0x117/0x120 block/blk-mq.c:702 blk_update_request+0x776/0x840 block/blk-mq.c:799 blk_mq_end_request block/blk-mq.c:941 [inline] blk_mq_try_issue_directly block/blk-mq.c:2522 [inline] blk_mq_submit_bio+0xc19/0xe40 block/blk-mq.c:2862 __submit_bio+0x130/0x330 block/blk-core.c:666 __submit_bio_noacct_mq block/blk-core.c:743 [inline] submit_bio_noacct_nocheck+0x3cb/0x480 block/blk-core.c:760 submit_bio_noacct+0x6c4/0x820 block/blk-core.c:867 submit_bio+0x139/0x150 submit_bh_wbc+0x2a8/0x2f0 fs/buffer.c:3045 submit_bh fs/buffer.c:3051 [inline] block_read_full_page+0x5e6/0x7b0 fs/buffer.c:2334 blkdev_readpage+0x18/0x20 block/fops.c:392 do_read_cache_folio+0x20e/0x3a0 mm/filemap.c:3509 do_read_cache_page mm/filemap.c:3588 [inline] read_cache_page+0x37/0x170 mm/filemap.c:3597 read_mapping_page include/linux/pagemap.h:759 [inline] read_part_sector+0x78/0x2f0 block/partitions/core.c:723 read_lba block/partitions/efi.c:248 [inline] find_valid_gpt+0x1e7/0xcb0 block/partitions/efi.c:603 efi_partition+0xba/0x6e0 block/partitions/efi.c:720 check_partition block/partitions/core.c:147 [inline] blk_add_partitions block/partitions/core.c:608 [inline] bdev_disk_changed+0x3c5/0xc30 block/partitions/core.c:694 blkdev_get_whole block/bdev.c:679 [inline] blkdev_get_by_dev+0x3c1/0x9e0 block/bdev.c:816 disk_scan_partitions+0x91/0xc0 block/genhd.c:392 blkdev_common_ioctl+0xd6e/0x1090 block/ioctl.c:504 blkdev_ioctl+0x1a7/0x440 block/ioctl.c:582 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:870 [inline] __se_sys_ioctl+0xcb/0x140 fs/ioctl.c:856 __x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:856 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x2b/0x70 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae value changed: 0x000000010005860d -> 0x203a35706f6f6c20 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 1441 Comm: udevd Not tainted 5.18.0-rc4-syzkaller-00036-gcf424ef014ac-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ================================================================== Buffer I/O error on dev loop4, logical block 0, async page read loop4: unable to read partition table loop4: partition table beyond EOD, truncated loop0: p1 < > p2 p3 < p5 p6 > p4 loop0: partition table partially beyond EOD, truncated loop0: p1 start 1 is beyond EOD, truncated loop0: p2 size 1073741824 extends beyond EOD, truncated loop0: p3 size 2 extends beyond EOD, truncated loop0: p4 size 32768 extends beyond EOD, truncated loop0: p5 size 1073741824 extends beyond EOD, truncated loop0: p6 size 32768 extends beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 64 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 64 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated I/O error, dev loop3, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop3, logical block 0, async page read loop3: unable to read partition table loop3: partition table beyond EOD, truncated loop0: p1 < > p2 p3 < p5 p6 > p4 loop0: partition table partially beyond EOD, truncated loop0: p1 start 1 is beyond EOD, truncated loop0: p2 size 1073741824 extends beyond EOD, truncated loop0: p3 size 2 extends beyond EOD, truncated loop0: p4 size 32768 extends beyond EOD, truncated loop0: p5 size 1073741824 extends beyond EOD, truncated loop0: p6 size 32768 extends beyond EOD, truncated I/O error, dev loop3, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop3, logical block 0, async page read loop3: unable to read partition table loop3: partition table beyond EOD, truncated loop0: p1 < > p2 p3 < p5 p6 > p4 loop0: partition table partially beyond EOD, truncated loop0: p1 start 1 is beyond EOD, truncated loop0: p2 size 1073741824 extends beyond EOD, truncated loop0: p3 size 2 extends beyond EOD, truncated loop0: p4 size 32768 extends beyond EOD, truncated loop0: p5 size 1073741824 extends beyond EOD, truncated loop0: p6 size 32768 extends beyond EOD, truncated I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop2, logical block 0, async page read loop2: unable to read partition table loop2: partition table beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 start 16777216 is beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 start 16777216 is beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 start 16777216 is beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 start 16777216 is beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop0, logical block 0, async page read loop0: unable to read partition table loop0: partition table beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 78 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop0, logical block 0, async page read loop0: unable to read partition table loop0: partition table beyond EOD, truncated loop2: p1 < > p2 p3 p4 loop2: partition table partially beyond EOD, truncated loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop2: p1 < > p2 p3 p4 loop2: partition table partially beyond EOD, truncated loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated I/O error, dev loop3, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop3, logical block 0, async page read loop3: unable to read partition table loop3: partition table beyond EOD, truncated I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop4, logical block 0, async page read loop4: unable to read partition table loop4: partition table beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 96 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 96 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop0: p1 < > p2 p3 < p5 p6 > p4 loop0: partition table partially beyond EOD, truncated loop0: p1 start 1 is beyond EOD, truncated loop0: p2 size 1073741824 extends beyond EOD, truncated loop0: p3 size 2 extends beyond EOD, truncated loop0: p4 size 32768 extends beyond EOD, truncated loop0: p5 size 1073741824 extends beyond EOD, truncated loop0: p6 size 32768 extends beyond EOD, truncated loop0: p1 < > p2 p3 < p5 p6 > p4 loop0: partition table partially beyond EOD, truncated loop0: p1 start 1 is beyond EOD, truncated loop0: p2 size 1073741824 extends beyond EOD, truncated loop0: p3 size 2 extends beyond EOD, truncated loop0: p4 size 32768 extends beyond EOD, truncated loop0: p5 size 1073741824 extends beyond EOD, truncated loop0: p6 size 32768 extends beyond EOD, truncated I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop0, logical block 0, async page read loop0: unable to read partition table loop0: partition table beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 104 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop2: p1 p2 p3 p4 loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop2: p1 p2 p3 p4 loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 108 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 108 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 size 1073741860 extends beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 size 1073741860 extends beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated loop2: p1 p2 p3 p4 loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 start 33554432 is beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 start 33554432 is beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated loop2: p1 p2 p3 p4 loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop2: p1 p2 p3 p4 loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 size 1073741862 extends beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 size 1073741862 extends beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated loop4: p1 < > p2 p3 < p5 p6 > p4 loop4: partition table partially beyond EOD, truncated loop4: p1 start 1 is beyond EOD, truncated loop4: p2 start 50331648 is beyond EOD, truncated loop4: p3 size 2 extends beyond EOD, truncated loop4: p4 size 32768 extends beyond EOD, truncated loop4: p5 start 50331648 is beyond EOD, truncated loop4: p6 size 32768 extends beyond EOD, truncated I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop4, logical block 0, async page read loop4: unable to read partition table loop4: partition table beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD, truncated loop3: p2 size 1073741824 extends beyond EOD, truncated loop3: p3 start 122 is beyond EOD, truncated loop3: p4 size 32768 extends beyond EOD, truncated I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop0, logical block 0, async page read loop0: unable to read partition table loop0: partition table beyond EOD, truncated loop2: p1 < > p2 p3 p4 loop2: partition table partially beyond EOD, truncated loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated loop2: p1 < > p2 p3 p4 loop2: partition table partially beyond EOD, truncated loop2: p1 start 1 is beyond EOD, truncated loop2: p2 size 1073741824 extends beyond EOD, truncated loop2: p3 size 1912633224 extends beyond EOD, truncated loop2: p4 size 32768 extends beyond EOD, truncated I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop2, logical block 0, async page read loop2: unable to read partition table loop2: partition table beyond EOD, truncated I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop4, logical block 0, async page read loop4: unable to read partition table loop4: partition table beyond EOD, truncated I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop2, logical block 0, async page read loop2: unable to read partition table loop2: partition table beyond EOD, truncated I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 Buffer I/O error on dev loop4, logical block 0, async page read loop4: unable to read partition table loop4: partition table beyond EOD, truncated loop3: p1 < > p2 p3 < > p4 loop3: partition table partially beyond EOD, truncated loop3: p1 start 1 is beyond EOD,