From: Bobi Jam Date: Thu, 23 Jan 2014 05:16:51 +0000 (+0800) Subject: LU-4503 clio: lu_ref_del() mismatch ref add scope X-Git-Tag: 2.6.51~14 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=ecd44df592e8c97885e548ae2d4352c2f05f79f0 LU-4503 clio: lu_ref_del() mismatch ref add scope git commit 4fcbd1af9ec3b1e5f6424d925f43f0cb2910c3ec adds page to a list and aggregate issuing them to writeback cache; A page add is referenced in llite/vvp io scope, while writeback cache commit de-refers it under osc sub io scope, and --enable-lu_ref will detect this scope mismatch. Signed-off-by: Bobi Jam Change-Id: I368ac1f7118f420edde651ce84a595128d15b527 Reviewed-on: http://review.whamcloud.com/8970 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: frank zago Reviewed-by: Jinshan Xiong Reviewed-by: Oleg Drokin --- diff --git a/lustre/llite/vvp_io.c b/lustre/llite/vvp_io.c index 77b4049..fff352f 100644 --- a/lustre/llite/vvp_io.c +++ b/lustre/llite/vvp_io.c @@ -662,7 +662,7 @@ static void write_commit_callback(const struct lu_env *env, struct cl_io *io, cl_page_disown(env, io, page); /* held in ll_cl_init() */ - lu_ref_del(&page->cp_reference, "cl_io", io); + lu_ref_del(&page->cp_reference, "cl_io", cl_io_top(io)); cl_page_put(env, page); }