Details
-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
Lustre 2.17.0
-
RHEL8 debugging server service issue showing up with sanity-quota testing
-
3
-
9223372036854775807
Description
Now that we fixed on quota bug with debugging kernel another one has been exposed.
BUG: sleeping function called from invalid context at kernel/locking/rwsem.c:1646
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 24274, name: ldlm_cb00_000 [ 1186.401920] INFO: lockdep is turned off.
Call Trace: [ 1186.413231] ? dump_stack+0xbb/0x10e
? __might_sleep+0x59/0xc0 [ 1186.424798] ? down_read_nested+0x2e/0x4b0
? lquota_disk_read+0x304/0x6a0
qsd_refresh_usage+0x105/0x3d0
qsd_id_glimpse_ast+0x480/0x980
ldlm_callback_handler+0x4a8/0x2280
The reason for this I believe is due to qsd_id_glimpse_ast() calls lqe_write_lock() but then qsd_refresh_usage() also takes dt_read_lock().