From: Patrick Farrell Date: Thu, 24 Aug 2023 15:43:53 +0000 (-0400) Subject: LU-13814 clio: remove cl_page_delete for transient X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=d45a67e7282c97531eb26b1af7f2c8884c3a68d2;p=fs%2Flustre-release.git LU-13814 clio: remove cl_page_delete for transient cl_page_delete no longer does anything for transient pages, so do not call it for them. Test-Parameters: forjanitoronly Test-Parameters: fortestonly Signed-off-by: Patrick Farrell Change-Id: I666cceaa1f05bf7e86fb60782eb573d5714051ee --- diff --git a/lustre/obdclass/cl_io.c b/lustre/obdclass/cl_io.c index fac274f..f2ec05a 100644 --- a/lustre/obdclass/cl_io.c +++ b/lustre/obdclass/cl_io.c @@ -1214,7 +1214,6 @@ static void cl_sub_dio_end(const struct lu_env *env, struct cl_sync_io *anchor) while (sdio->csd_pages.pl_nr > 0) { struct cl_page *page = cl_page_list_first(&sdio->csd_pages); - cl_page_delete(env, page); cl_page_list_del(env, &sdio->csd_pages, page, false); cl_page_put(env, page); } diff --git a/lustre/obdclass/cl_page.c b/lustre/obdclass/cl_page.c index 87efdf6..c373ce3 100644 --- a/lustre/obdclass/cl_page.c +++ b/lustre/obdclass/cl_page.c @@ -817,15 +817,16 @@ static void __cl_page_delete(const struct lu_env *env, struct cl_page *cp) ENTRY; + if (cp->cp_type == CPT_TRANSIENT) + EXIT; + /* * Severe all ways to obtain new pointers to @pg. * Transient pages already can't be found because they're not in cache. */ - if (cp->cp_type != CPT_TRANSIENT) { - PASSERT(env, cp, cp->cp_state != CPS_FREEING); - cl_page_owner_clear(cp); - __cl_page_state_set(env, cp, CPS_FREEING); - } + PASSERT(env, cp, cp->cp_state != CPS_FREEING); + cl_page_owner_clear(cp); + __cl_page_state_set(env, cp, CPS_FREEING); cl_page_slice_for_each_reverse(cp, slice, i) { if (slice->cpl_ops->cpo_delete != NULL)