X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Fobdclass%2Flu_object.c;h=a77898cac97cf7596bd41be31e65e75203f6b338;hp=38f29c01ce94f76901dee177cfdd0a8db595be93;hb=16e0fe6eab3e54aa7beddb75bf7dae05645408e9;hpb=783de3e99d0a2185d26bc67a9ca852b08a760cf6 diff --git a/lustre/obdclass/lu_object.c b/lustre/obdclass/lu_object.c index 38f29c0..a77898c 100644 --- a/lustre/obdclass/lu_object.c +++ b/lustre/obdclass/lu_object.c @@ -57,6 +57,7 @@ #include #include #include +#include #include static void lu_object_free(const struct lu_env *env, struct lu_object *o); @@ -1949,63 +1950,6 @@ static int lu_cache_shrink(int nr, unsigned int gfp_mask) } #endif /* __KERNEL__ */ -int cl_global_init(void); -void cl_global_fini(void); -int lu_ref_global_init(void); -void lu_ref_global_fini(void); - -int dt_global_init(void); -void dt_global_fini(void); - -int llo_global_init(void); -void llo_global_fini(void); - -/* context key constructor/destructor: lu_ucred_key_init, lu_ucred_key_fini */ -LU_KEY_INIT_FINI(lu_ucred, struct lu_ucred); - -static struct lu_context_key lu_ucred_key = { - .lct_tags = LCT_SESSION, - .lct_init = lu_ucred_key_init, - .lct_fini = lu_ucred_key_fini -}; - -/** - * Get ucred key if session exists and ucred key is allocated on it. - * Return NULL otherwise. - */ -struct lu_ucred *lu_ucred(const struct lu_env *env) -{ - if (!env->le_ses) - return NULL; - return lu_context_key_get(env->le_ses, &lu_ucred_key); -} -EXPORT_SYMBOL(lu_ucred); - -/** - * Get ucred key and check if it is properly initialized. - * Return NULL otherwise. - */ -struct lu_ucred *lu_ucred_check(const struct lu_env *env) -{ - struct lu_ucred *uc = lu_ucred(env); - if (uc && uc->uc_valid != UCRED_OLD && uc->uc_valid != UCRED_NEW) - return NULL; - return uc; -} -EXPORT_SYMBOL(lu_ucred_check); - -/** - * Get ucred key, which must exist and must be properly initialized. - * Assert otherwise. - */ -struct lu_ucred *lu_ucred_assert(const struct lu_env *env) -{ - struct lu_ucred *uc = lu_ucred_check(env); - LASSERT(uc != NULL); - return uc; -} -EXPORT_SYMBOL(lu_ucred_assert); - /** * Initialization of global lu_* data. */ @@ -2024,11 +1968,6 @@ int lu_global_init(void) if (result != 0) return result; - LU_CONTEXT_KEY_INIT(&lu_ucred_key); - result = lu_context_key_register(&lu_ucred_key); - if (result != 0) - return result; - /* * At this level, we don't know what tags are needed, so allocate them * conservatively. This should not be too bad, because this @@ -2049,17 +1988,6 @@ int lu_global_init(void) if (lu_site_shrinker == NULL) return -ENOMEM; -#ifdef __KERNEL__ - result = dt_global_init(); - if (result != 0) - return result; - - result = llo_global_init(); - if (result != 0) - return result; -#endif - result = cl_global_init(); - return result; } @@ -2068,18 +1996,12 @@ int lu_global_init(void) */ void lu_global_fini(void) { - cl_global_fini(); -#ifdef __KERNEL__ - llo_global_fini(); - dt_global_fini(); -#endif if (lu_site_shrinker != NULL) { cfs_remove_shrinker(lu_site_shrinker); lu_site_shrinker = NULL; } - lu_context_key_degister(&lu_global_key); - lu_context_key_degister(&lu_ucred_key); + lu_context_key_degister(&lu_global_key); /* * Tear shrinker environment down _after_ de-registering