From: Niu Yawei Date: Fri, 24 Feb 2012 05:21:51 +0000 (-0800) Subject: LU-1128 ldlm: return -1 for server pool shrinker X-Git-Tag: 2.1.58~1 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=8775fe0a40706b6999aa737fba1c162ce08b8ade;ds=sidebyside LU-1128 ldlm: return -1 for server pool shrinker For ldlm server pool shrinker, we just use it to decrease SLV, but never reclaim any memory directly, so it should always return -1 to inform the kernel to break the shrink loop. Signed-off-by: Niu Yawei Change-Id: I17f51ac84eb0b8c70b2cee9ac7eeca34647c1990 Reviewed-on: http://review.whamcloud.com/2184 Tested-by: Hudson Reviewed-by: Andreas Dilger Tested-by: Maloo Reviewed-by: Oleg Drokin --- diff --git a/lustre/ldlm/ldlm_pool.c b/lustre/ldlm/ldlm_pool.c index 0864f74..1f8f829 100644 --- a/lustre/ldlm/ldlm_pool.c +++ b/lustre/ldlm/ldlm_pool.c @@ -1150,7 +1150,9 @@ static int ldlm_pools_shrink(ldlm_side_t client, int nr, ldlm_namespace_put(ns); } cl_env_reexit(cookie); - return cached; + /* we only decrease the SLV in server pools shrinker, return -1 to + * kernel to avoid needless loop. LU-1128 */ + return (client == LDLM_NAMESPACE_SERVER) ? -1 : cached; } static int ldlm_pools_srv_shrink(SHRINKER_ARGS(sc, nr_to_scan, gfp_mask))