Whamcloud - gitweb
LU-16629 osd: refill the existing env 70/50270/1
authorHongchao Zhang <hongchao@whamcloud.com>
Mon, 6 Mar 2023 13:17:10 +0000 (08:17 -0500)
committerhxing <hxing@ddn.com>
Mon, 13 Mar 2023 07:10:41 +0000 (15:10 +0800)
During the LDLM lock callback, the "lu_env" is created in
ldlm_bl_thread_main, which is initiated by "ldlm_setup",
and it could have no key of "osd_thread_info" yet, then it
need to call "lu_env_refill" to refill the keys.

Change-Id: Ibae978a5a10826c2e3186012911870ce7bf0b147
Signed-off-by: Hongchao Zhang <hongchao@whamcloud.com>
lustre/mdt/mdt_io.c

index fa72341..3e86539 100644 (file)
@@ -1938,6 +1938,9 @@ int ldlm_dom_discard_cp_ast(struct ldlm_lock *lock, __u64 flags, void *data)
 
        env = lu_env_find();
        LASSERT(env);
+
+       lu_env_refill(env);
+
        mdt_object_put(env, mo);
 
        RETURN(0);