projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e269927
)
bcachefs: add missing sched_annotate_sleep()
author
Kent Overstreet
<kent.overstreet@linux.dev>
Thu, 1 May 2025 16:38:00 +0000
(12:38 -0400)
committer
Kent Overstreet
<kent.overstreet@linux.dev>
Thu, 1 May 2025 17:54:58 +0000
(13:54 -0400)
00594 ------------[ cut here ]------------
00594 do not call blocking ops when !TASK_RUNNING; state=2 set at [<
000000003e51ef4a
>] prepare_to_wait_event+0x5c/0x1c0
00594 WARNING: CPU: 12 PID: 1117 at kernel/sched/core.c:8741 __might_sleep+0x74/0x88
00594 Modules linked in:
00594 CPU: 12 UID: 0 PID: 1117 Comm: umount Not tainted
6.15.0-rc4-ktest-g3a72e369412d
#21845 PREEMPT
00594 Hardware name: linux,dummy-virt (DT)
00594 pstate:
60001005
(nZCv daif -PAN -UAO -TCO -DIT +SSBS BTYPE=--)
00594 pc : __might_sleep+0x74/0x88
00594 lr : __might_sleep+0x74/0x88
00594 sp :
ffffff80c8d67a90
00594 x29:
ffffff80c8d67a90
x28:
ffffff80f5903500
x27:
0000000000000000
00594 x26:
0000000000000000
x25:
ffffff80cf5002a0
x24:
ffffffc087dad000
00594 x23:
ffffff80c8d67b40
x22:
0000000000000000
x21:
0000000000000000
00594 x20:
0000000000000242
x19:
ffffffc080b92020
x18:
00000000ffffffff
00594 x17:
30303c5b20746120
x16:
74657320323d6574
x15:
617473203b474e49
00594 x14:
0000000000000001
x13:
00000000000c0000
x12:
ffffff80facc0000
00594 x11:
0000000000000001
x10:
0000000000000001
x9 :
ffffffc0800b0774
00594 x8 :
c0000000fffbffff
x7 :
ffffffc087dac670
x6 :
00000000015fffa8
00594 x5 :
ffffff80facbffa8
x4 :
ffffff80fbd30b90
x3 :
0000000000000000
00594 x2 :
0000000000000000
x1 :
0000000000000000
x0 :
ffffff80f5903500
00594 Call trace:
00594 __might_sleep+0x74/0x88 (P)
00594 __mutex_lock+0x64/0x8d8
00594 mutex_lock_nested+0x28/0x38
00594 bch2_fs_ec_flush+0xf8/0x128
00594 __bch2_fs_read_only+0x54/0x1d8
00594 bch2_fs_read_only+0x3e0/0x438
00594 __bch2_fs_stop+0x5c/0x250
00594 bch2_put_super+0x18/0x28
00594 generic_shutdown_super+0x6c/0x140
00594 bch2_kill_sb+0x1c/0x38
00594 deactivate_locked_super+0x54/0xd0
00594 deactivate_super+0x70/0x90
00594 cleanup_mnt+0xec/0x188
00594 __cleanup_mnt+0x18/0x28
00594 task_work_run+0x90/0xd8
00594 do_notify_resume+0x138/0x148
00594 el0_svc+0x9c/0xa0
00594 el0t_64_sync_handler+0x104/0x130
00594 el0t_64_sync+0x154/0x158
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/ec.c
patch
|
blob
|
blame
|
history
diff --git
a/fs/bcachefs/ec.c
b/fs/bcachefs/ec.c
index a396865e8b176bebfc4f094fe5b97b12d32ba28f..fff58b78327c1a991dc22d9f718a800c31ef7ea5 100644
(file)
--- a/
fs/bcachefs/ec.c
+++ b/
fs/bcachefs/ec.c
@@
-2204,10
+2204,10
@@
void bch2_fs_ec_stop(struct bch_fs *c)
static bool bch2_fs_ec_flush_done(struct bch_fs *c)
{
-
bool ret
;
+
sched_annotate_sleep()
;
mutex_lock(&c->ec_stripe_new_lock);
- ret = list_empty(&c->ec_stripe_new_list);
+
bool
ret = list_empty(&c->ec_stripe_new_list);
mutex_unlock(&c->ec_stripe_new_lock);
return ret;