diff --git a/lustre/cmm/cmm_device.c b/lustre/cmm/cmm_device.c
index 3dee0606887fbcbc64a88f01032a8104ad78d5c6..38054f4c9968cc23fa6ba8dddfa8c49086fb899f 100644
--- a/lustre/cmm/cmm_device.c
+++ b/lustre/cmm/cmm_device.c
@@ -382,9 +382,10 @@ static void cmm_device_free(const struct lu_env *env, struct lu_device *d)
         OBD_FREE_PTR(m);
 }
 
-/* context key constructor/destructor */
+/* context key constructor/destructor: cmm_key_init, cmm_key_fini */
 LU_KEY_INIT_FINI(cmm, struct cmm_thread_info);
 
+/* context key: cmm_thread_key */
 LU_CONTEXT_KEY_DEFINE(cmm, LCT_MD_THREAD);
 
 struct cmm_thread_info *cmm_env_info(const struct lu_env *env)
@@ -396,6 +397,7 @@ struct cmm_thread_info *cmm_env_info(const struct lu_env *env)
         return info;
 }
 
+/* type constructor/destructor: cmm_type_init/cmm_type_fini */
 LU_TYPE_INIT_FINI(cmm, &cmm_thread_key);
 
 static int cmm_device_init(const struct lu_env *env, struct lu_device *d,
diff --git a/lustre/cmm/mdc_device.c b/lustre/cmm/mdc_device.c
index 6142f3653b815f9393fa0d25013031b594157017..7352cd64ec5b1668e667c2e9d2e7ea230f31cae1 100644
--- a/lustre/cmm/mdc_device.c
+++ b/lustre/cmm/mdc_device.c
@@ -289,11 +289,13 @@ void mdc_device_free(const struct lu_env *env, struct lu_device *ld)
         OBD_FREE_PTR(mc);
 }
 
-/* context key constructor/destructor */
+/* context key constructor/destructor: mdc_key_init, mdc_key_fini */
 LU_KEY_INIT_FINI(mdc, struct mdc_thread_info);
 
+/* context key: mdc_thread_key */
 LU_CONTEXT_KEY_DEFINE(mdc, LCT_MD_THREAD|LCT_CL_THREAD);
 
+/* type constructor/destructor: mdc_type_init, mdc_type_fini */
 LU_TYPE_INIT_FINI(mdc, &mdc_thread_key);
 
 static struct lu_device_type_operations mdc_device_type_ops = {
diff --git a/lustre/fid/fid_handler.c b/lustre/fid/fid_handler.c
index 0522eb8e3a49b9d874173a762b555f6d2150bbfb..5a576d1b2ccb89d8cb9056e47ca2dbc1d2276da6 100644
--- a/lustre/fid/fid_handler.c
+++ b/lustre/fid/fid_handler.c
@@ -356,8 +356,10 @@ static int seq_req_handle(struct ptlrpc_request *req,
         RETURN(rc);
 }
 
+/* context key constructor/destructor: seq_key_init, seq_key_fini */
 LU_KEY_INIT_FINI(seq, struct seq_thread_info);
 
+/* context key: seq_thread_key */
 LU_CONTEXT_KEY_DEFINE(seq, LCT_MD_THREAD);
 
 static void seq_thread_info_init(struct ptlrpc_request *req,
diff --git a/lustre/fld/fld_handler.c b/lustre/fld/fld_handler.c
index ec52b5c60eb15f48b3369059d581954af0f429f7..00c9d123001bb2af7afe0eb34a5da3d76d9b4246 100644
--- a/lustre/fld/fld_handler.c
+++ b/lustre/fld/fld_handler.c
@@ -53,8 +53,10 @@
 
 #ifdef __KERNEL__
 
+/* context key constructor/destructor: fld_key_init, fld_key_fini */
 LU_KEY_INIT_FINI(fld, struct fld_thread_info);
 
+/* context key: fld_thread_key */
 LU_CONTEXT_KEY_DEFINE(fld, LCT_MD_THREAD|LCT_DT_THREAD);
 
 cfs_proc_dir_entry_t *fld_type_proc_dir = NULL;
diff --git a/lustre/mdd/mdd_device.c b/lustre/mdd/mdd_device.c
index f7ba9e76dd767eb9ed13d6e883c0399c58b99c39..480bb7bc8ac5b05c29f152464684f0692c701155 100644
--- a/lustre/mdd/mdd_device.c
+++ b/lustre/mdd/mdd_device.c
@@ -329,6 +329,7 @@ static struct obd_ops mdd_obd_device_ops = {
         .o_owner = THIS_MODULE
 };
 
+/* context key constructor/destructor: mdd_ucred_key_init, mdd_ucred_key_fini */
 LU_KEY_INIT_FINI(mdd_ucred, struct md_ucred);
 
 static struct lu_context_key mdd_ucred_key = {
@@ -344,6 +345,10 @@ struct md_ucred *md_ucred(const struct lu_env *env)
 }
 EXPORT_SYMBOL(md_ucred);
 
+/*
+ * context key constructor/destructor:
+ * mdd_capainfo_key_init, mdd_capainfo_key_fini
+ */
 LU_KEY_INIT_FINI(mdd_capainfo, struct md_capainfo);
 
 struct lu_context_key mdd_capainfo_key = {
@@ -361,6 +366,7 @@ struct md_capainfo *md_capainfo(const struct lu_env *env)
 }
 EXPORT_SYMBOL(md_capainfo);
 
+/* type constructor/destructor: mdd_type_init, mdd_type_fini */
 LU_TYPE_INIT_FINI(mdd, &mdd_thread_key, &mdd_ucred_key, &mdd_capainfo_key);
 
 struct md_device_operations mdd_ops = {
@@ -389,6 +395,7 @@ static struct lu_device_type mdd_device_type = {
         .ldt_ctx_tags = LCT_MD_THREAD
 };
 
+/* context key constructor: mdd_key_init */
 LU_KEY_INIT(mdd, struct mdd_thread_info);
 
 static void mdd_key_fini(const struct lu_context *ctx,
@@ -402,6 +409,7 @@ static void mdd_key_fini(const struct lu_context *ctx,
         OBD_FREE_PTR(info);
 }
 
+/* context key: mdd_thread_key */
 LU_CONTEXT_KEY_DEFINE(mdd, LCT_MD_THREAD);
 
 struct lprocfs_vars lprocfs_mdd_obd_vars[] = {
diff --git a/lustre/mdt/mdt_handler.c b/lustre/mdt/mdt_handler.c
index c9db9251d09bf1950d2dd7733fd1316ca57c8a15..1446971084d14cb7613d6dcf938b5d3c3a569ae6 100644
--- a/lustre/mdt/mdt_handler.c
+++ b/lustre/mdt/mdt_handler.c
@@ -4542,13 +4542,13 @@ static struct lu_device *mdt_device_alloc(const struct lu_env *env,
         return l;
 }
 
-/*
- * context key constructor/destructor
- */
+/* context key constructor/destructor: mdt_key_init, mdt_key_fini */
 LU_KEY_INIT_FINI(mdt, struct mdt_thread_info);
 
+/* context key: mdt_thread_key */
 LU_CONTEXT_KEY_DEFINE(mdt, LCT_MD_THREAD);
 
+/* context key constructor/destructor: mdt_txn_key_init, mdt_txn_key_fini */
 LU_KEY_INIT_FINI(mdt_txn, struct mdt_txn_info);
 
 struct lu_context_key mdt_txn_key = {
@@ -4562,6 +4562,7 @@ struct md_ucred *mdt_ucred(const struct mdt_thread_info *info)
         return md_ucred(info->mti_env);
 }
 
+/* type constructor/destructor: mdt_type_init, mdt_type_fini */
 LU_TYPE_INIT_FINI(mdt, &mdt_thread_key, &mdt_txn_key);
 
 static struct lu_device_type_operations mdt_device_type_ops = {
diff --git a/lustre/obdclass/lu_object.c b/lustre/obdclass/lu_object.c
index 387f0f2fc748b9079e288059475ce96434446937..8629ee9651b224829bd86dd500aaa2529c6b3f5c 100644
--- a/lustre/obdclass/lu_object.c
+++ b/lustre/obdclass/lu_object.c
@@ -290,6 +290,7 @@ struct lu_cdebug_data {
         struct lu_fid_pack lck_pack;
 };
 
+/* context key constructor/destructor: lu_global_key_init, lu_global_key_fini */
 LU_KEY_INIT_FINI(lu_global, struct lu_cdebug_data);
 
 /*
diff --git a/lustre/obdclass/lu_time.c b/lustre/obdclass/lu_time.c
index 5a11f007918372cab5544d2ced52e6276f1b0f03..77c053dd5eac55b5b9a101bb1eceb352b00e934e 100644
--- a/lustre/obdclass/lu_time.c
+++ b/lustre/obdclass/lu_time.c
@@ -48,6 +48,7 @@ struct lu_time_data {
         unsigned long long ltd_timestamp[LU_TIME_DEPTH_MAX];
 };
 
+/* context key constructor/destructor: lu_time_key_init, lu_time_key_fini */
 LU_KEY_INIT_FINI(lu_time, struct lu_time_data);
 
 void lu_time_key_exit(const struct lu_context *ctx,
diff --git a/lustre/osd/osd_handler.c b/lustre/osd/osd_handler.c
index 20965ee3a2a5898fb94ecd251595a379f8c7e60b..85f3e06428d74bfa04fdf72afa4bbd3cbb35df62 100644
--- a/lustre/osd/osd_handler.c
+++ b/lustre/osd/osd_handler.c
@@ -2208,10 +2208,7 @@ static struct dt_index_operations osd_index_compat_ops = {
         .dio_delete = osd_index_compat_delete
 };
 
-/*
- * OSD device type methods
- */
- 
+/* type constructor/destructor: osd_type_init, osd_type_fini */
 LU_TYPE_INIT_FINI(osd, &osd_key);
 
 static struct lu_context_key osd_key = {
@@ -2234,6 +2231,7 @@ static void *osd_key_init(const struct lu_context *ctx,
         return info;
 }
 
+/* context key destructor: osd_key_fini */
 LU_KEY_FINI(osd, struct osd_thread_info);
 
 static void osd_key_exit(const struct lu_context *ctx,