bcachefs: Fix bkey_nocow_lock()
This fixes an assertion pop in nocow_locking.c
00243 kernel BUG at fs/bcachefs/nocow_locking.c:41!
00243 Internal error: Oops - BUG:
00000000f2000800 [#1] SMP
00243 Modules linked in:
00243 Hardware name: linux,dummy-virt (DT)
00243 pstate:
60001005 (nZCv daif -PAN -UAO -TCO -DIT +SSBS BTYPE=--)
00244 pc : bch2_bucket_nocow_unlock (/home/testdashboard/linux-7/fs/bcachefs/nocow_locking.c:41)
00244 lr : bkey_nocow_lock (/home/testdashboard/linux-7/fs/bcachefs/data_update.c:79)
00244 sp :
ffffff80c82373b0
00244 x29:
ffffff80c82373b0 x28:
ffffff80e08958c0 x27:
ffffff80e0880000
00244 x26:
ffffff80c8237a98 x25:
00000000000000a0 x24:
ffffff80c8237ab0
00244 x23:
00000000000000c0 x22:
0000000000000008 x21:
0000000000000000
00244 x20:
ffffff80c8237a98 x19:
0000000000000018 x18:
0000000000000000
00244 x17:
0000000000000000 x16:
000000000000003f x15:
0000000000000000
00244 x14:
0000000000000008 x13:
0000000000000018 x12:
0000000000000000
00244 x11:
0000000000000000 x10:
ffffff80e0880000 x9 :
ffffffc0803ac1a4
00244 x8 :
0000000000000018 x7 :
ffffff80c8237a88 x6 :
ffffff80c8237ab0
00244 x5 :
ffffff80e08988d0 x4 :
00000000ffffffff x3 :
0000000000000000
00244 x2 :
0000000000000004 x1 :
0003000000000d1e x0 :
ffffff80e08988c0
00244 Call trace:
00244 bch2_bucket_nocow_unlock (/home/testdashboard/linux-7/fs/bcachefs/nocow_locking.c:41)
00245 bch2_data_update_init (/home/testdashboard/linux-7/fs/bcachefs/data_update.c:627 (discriminator 1))
00245 promote_alloc.isra.0 (/home/testdashboard/linux-7/fs/bcachefs/io_read.c:242 /home/testdashboard/linux-7/fs/bcachefs/io_read.c:304)
00245 __bch2_read_extent (/home/testdashboard/linux-7/fs/bcachefs/io_read.c:949)
00246 __bch2_read (/home/testdashboard/linux-7/fs/bcachefs/io_read.c:1215)
00246 bch2_direct_IO_read (/home/testdashboard/linux-7/fs/bcachefs/fs-io-direct.c:132)
00246 bch2_read_iter (/home/testdashboard/linux-7/fs/bcachefs/fs-io-direct.c:201)
00247 aio_read.constprop.0 (/home/testdashboard/linux-7/fs/aio.c:1602)
00247 io_submit_one.constprop.0 (/home/testdashboard/linux-7/fs/aio.c:2003 /home/testdashboard/linux-7/fs/aio.c:2052)
00248 __arm64_sys_io_submit (/home/testdashboard/linux-7/fs/aio.c:2111 /home/testdashboard/linux-7/fs/aio.c:2081 /home/testdashboard/linux-7/fs/aio.c:2081)
00248 invoke_syscall.constprop.0 (/home/testdashboard/linux-7/arch/arm64/include/asm/syscall.h:61 /home/testdashboard/linux-7/arch/arm64/kernel/syscall.c:54)
00248 ========= FAILED TIMEOUT tiering_variable_buckets_replicas in 1200s
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>