From 69a9042f26fa22b1d5b2ad7b3cb8024d508268dd Mon Sep 17 00:00:00 2001 From: Vladimir Saveliev Date: Tue, 24 Aug 2021 17:57:37 +0300 Subject: [PATCH] LU-15079 quota: include qsd_thread_info into mgs thread context mgs service thread envs do not get supplied with qsd_thread_info, which may lead to the failure shown below: (lu_object.h:1274:lu_env_info()) ASSERTION( info ) failed: (lu_object.h:1274:lu_env_info()) LBUG Pid: 146951, comm: ll_mgs_0003 3.10.0-957.1.3957.1.3.x4.3.25.x86_64 #1 SMP Call Trace: libcfs_call_trace+0x8e/0xf0 [libcfs] lbug_with_loc+0x4c/0xa0 [libcfs] qsd_refresh_usage+0x25e/0x2f0 [lquota] qsd_op_adjust+0x2f1/0x730 [lquota] osd_object_delete+0x2b2/0x360 [osd_ldiskfs] lu_object_free.isra.32+0x68/0x170 [obdclass] lu_site_purge_objects+0x2fe/0x530 [obdclass] lu_object_find_at+0x371/0xa60 [obdclass] dt_locate_at+0x1d/0xb0 [obdclass] llog_osd_open+0x50e/0xf30 [obdclass] llog_open+0x15a/0x3e0 [obdclass] llog_origin_handle_open+0x334/0x720 [ptlrpc] tgt_llog_open+0x33/0xe0 [ptlrpc] mgs_llog_open+0x46/0x460 [mgs] tgt_request_handle+0x96a/0x1680 [ptlrpc] Supply msg service context with qsd_thread_info. Change-Id: If8664b81e1f64df015dad46ba26c9c1d1e3f54bf HPE-bug-id: LUS-10334 Signed-off-by: Vladimir Saveliev Reviewed-on: https://review.whamcloud.com/45181 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Andreas Dilger Reviewed-by: Andrew Perepechko Reviewed-by: Oleg Drokin --- lustre/quota/qsd_lib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lustre/quota/qsd_lib.c b/lustre/quota/qsd_lib.c index 1db445a..03e6f79 100644 --- a/lustre/quota/qsd_lib.c +++ b/lustre/quota/qsd_lib.c @@ -69,7 +69,7 @@ struct lu_kmem_descr qsd_caches[] = { /* define qsd thread key */ LU_KEY_INIT_FINI(qsd, struct qsd_thread_info); -LU_CONTEXT_KEY_DEFINE(qsd, LCT_MD_THREAD | LCT_DT_THREAD | LCT_LOCAL); +LU_CONTEXT_KEY_DEFINE(qsd, LCT_MD_THREAD | LCT_MG_THREAD | LCT_DT_THREAD | LCT_LOCAL); LU_KEY_INIT_GENERIC(qsd); /* some procfs helpers */ -- 1.8.3.1