Hi Kent,
JFYI, I'm seeing the following splat pretty reliably via generic/361 on
an 80xcpu test box. The CI doesn't seem to produce this failure for
whatever reason. This bisects down to commit 023f9ac9f70f ("bcachefs:
Delete dio read alignment check"), before which the test still fails but
the kernel doesn't explode.
Brian
--- 8< ---
general protection fault, probably for non-canonical address 0x280766500040001:
0000 [#1] PREEMPT SMP PTI
CPU: 15 PID: 1078 Comm: kworker/15:1H Tainted: G OE 6.7.0-rc7+
#68
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-1.fc37
04/01/2014
Workqueue: events_highpri __bch2_read_endio [bcachefs]
RIP: 0010:bio_copy_data_iter+0x186/0x260
Code: 29 f6 48 c1 f9 06 48 c1 fe 06 48 c1 e1 0c 48 c1 e6 0c 48 01 e9 48 01 ee
48 01 d9 4c 01 d6 83 fa 08 0f 82 b0 fe ff ff 48 8b 06 <48> 89 01 89 d0 48 8b 7c
06 f8 48 89 7c 01 f8 48 8d 79 08 48 83 e7
RSP: 0018:ffffa31644a63d38 EFLAGS: 00010212
RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0280766500040001
RDX: 0000000000000c00 RSI: ffff8d462b83d400 RDI: ffff8d460fc9edd0
RBP: ffff8d4500000000 R08: ffffa31644a63dc0 R09: ffffa31644a63dd4
R10: 0000000000000400 R11: 0000000000000c00 R12: ffff8d462beb9aa8
R13: ffff8d460fc9ed38 R14: fffffc5e80000000 R15: 0000000000001000
FS: 0000000000000000(0000) GS:ffff8d64fdd80000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f7255016120 CR3: 000000012534e003 CR4: 0000000000770ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
PKRU: 55555554
Call Trace:
<TASK>
? die_addr+0x32/0x80
? exc_general_protection+0x19b/0x450
? asm_exc_general_protection+0x22/0x30
? bio_copy_data_iter+0x186/0x260
__bch2_read_endio+0x83d/0x920 [bcachefs]
? process_one_work+0x192/0x4d0
? process_one_work+0x1fc/0x4d0
process_one_work+0x1fc/0x4d0
worker_thread+0x1dd/0x3d0
? __pfx_worker_thread+0x10/0x10
kthread+0x100/0x130
? __pfx_kthread+0x10/0x10
ret_from_fork+0x2d/0x50
? __pfx_kthread+0x10/0x10
ret_from_fork_asm+0x1b/0x30
</TASK>
Modules linked in: bcachefs(OE) lz4_compress(E) lz4hc_compress(E)
nft_fib_inet(E) nft_fib_ipv4(E) nft_fib_ipv6(E) nft_fib(E) nft_reject_inet(E)
nf_reject_ipv4(E) nf_reject_ipv6(E) nft_reject(E) nft_ct(E) nft_chain_nat(E)
nf_nat(E) nf_conntrack(E) nf_defrag_ipv6(E) nf_defrag_ipv4(E) rfkill(E)
ip_set(E) nf_tables(E) nfnetlink(E) sunrpc(E) intel_rapl_msr(E)
intel_rapl_common(E) intel_uncore_frequency_common(E) isst_if_common(E)
kvm_intel(E) kvm(E) iTCO_wdt(E) intel_pmc_bxt(E) iTCO_vendor_support(E)
irqbypass(E) virtio_balloon(E) rapl(E) pktcdvd(E) i2c_i801(E) pcspkr(E)
i2c_smbus(E) lpc_ich(E) joydev(E) loop(E) zram(E) crct10dif_pclmul(E)
crc32_pclmul(E) crc32c_intel(E) virtiofs(E) virtio_net(E) net_failover(E)
ghash_clmulni_intel(E) virtio_console(E) failover(E) fuse(E) virtio_blk(E)
serio_raw(E) btrfs(E) xor(E) zstd_compress(E) raid6_pq(E) qemu_fw_cfg(E)
Unloaded tainted modules: bcachefs(E):3 intel_uncore_frequency(E):1
isst_if_mbox_msr(E):1 [last unloaded: bcachefs(OE)]
---[ end trace 0000000000000000 ]---
RIP: 0010:bio_copy_data_iter+0x186/0x260
Code: 29 f6 48 c1 f9 06 48 c1 fe 06 48 c1 e1 0c 48 c1 e6 0c 48 01 e9 48 01 ee
48 01 d9 4c 01 d6 83 fa 08 0f 82 b0 fe ff ff 48 8b 06 <48> 89 01 89 d0 48 8b 7c
06 f8 48 89 7c 01 f8 48 8d 79 08 48 83 e7
RSP: 0018:ffffa31644a63d38 EFLAGS: 00010212
RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0280766500040001
RDX: 0000000000000c00 RSI: ffff8d462b83d400 RDI: ffff8d460fc9edd0
RBP: ffff8d4500000000 R08: ffffa31644a63dc0 R09: ffffa31644a63dd4
R10: 0000000000000400 R11: 0000000000000c00 R12: ffff8d462beb9aa8
R13: ffff8d460fc9ed38 R14: fffffc5e80000000 R15: 0000000000001000
FS: 0000000000000000(0000) GS:ffff8d64fdd80000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f7255016120 CR3: 000000012534e003 CR4: 0000000000770ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
PKRU: 55555554