Whamcloud - gitweb
LU-9855 obdclass: Code cleanup
[fs/lustre-release.git] / lustre / obdclass / cl_page.c
index 74f9225..f3e0cc5 100644 (file)
@@ -74,21 +74,37 @@ static void cl_page_delete0(const struct lu_env *env, struct cl_page *pg);
 #endif /* !CONFIG_LUSTRE_DEBUG_EXPENSIVE_CHECK */
 
 /* Disable page statistic by default due to huge performance penalty. */
+static void cs_page_inc(const struct cl_object *obj,
+                       enum cache_stats_item item)
+{
 #ifdef CONFIG_DEBUG_PAGESTATE_TRACKING
-#define CS_PAGE_INC(o, item) \
-       atomic_inc(&cl_object_site(o)->cs_pages.cs_stats[CS_##item])
-#define CS_PAGE_DEC(o, item) \
-       atomic_dec(&cl_object_site(o)->cs_pages.cs_stats[CS_##item])
-#define CS_PAGESTATE_INC(o, state) \
-       atomic_inc(&cl_object_site(o)->cs_pages_state[state])
-#define CS_PAGESTATE_DEC(o, state) \
-       atomic_dec(&cl_object_site(o)->cs_pages_state[state])
-#else
-#define CS_PAGE_INC(o, item)
-#define CS_PAGE_DEC(o, item)
-#define CS_PAGESTATE_INC(o, state)
-#define CS_PAGESTATE_DEC(o, state)
+       atomic_inc(&cl_object_site(obj)->cs_pages.cs_stats[item]);
 #endif
+}
+
+static void cs_page_dec(const struct cl_object *obj,
+                       enum cache_stats_item item)
+{
+#ifdef CONFIG_DEBUG_PAGESTATE_TRACKING
+       atomic_dec(&cl_object_site(obj)->cs_pages.cs_stats[item]);
+#endif
+}
+
+static void cs_pagestate_inc(const struct cl_object *obj,
+                            enum cl_page_state state)
+{
+#ifdef CONFIG_DEBUG_PAGESTATE_TRACKING
+       atomic_inc(&cl_object_site(obj)->cs_pages_state[state]);
+#endif
+}
+
+static void cs_pagestate_dec(const struct cl_object *obj,
+                             enum cl_page_state state)
+{
+#ifdef CONFIG_DEBUG_PAGESTATE_TRACKING
+       atomic_dec(&cl_object_site(obj)->cs_pages_state[state]);
+#endif
+}
 
 /**
  * Internal version of cl_page_get().
@@ -145,8 +161,8 @@ static void cl_page_free(const struct lu_env *env, struct cl_page *page)
                if (unlikely(slice->cpl_ops->cpo_fini != NULL))
                        slice->cpl_ops->cpo_fini(env, slice);
        }
-       CS_PAGE_DEC(obj, total);
-       CS_PAGESTATE_DEC(obj, page->cp_state);
+       cs_page_dec(obj, CS_total);
+       cs_pagestate_dec(obj, page->cp_state);
        lu_object_ref_del_at(&obj->co_lu, &page->cp_obj_ref, "cl_page", page);
        cl_object_put(env, obj);
        lu_ref_fini(&page->cp_reference);
@@ -203,9 +219,9 @@ struct cl_page *cl_page_alloc(const struct lu_env *env,
                        }
                }
                if (result == 0) {
-                       CS_PAGE_INC(o, total);
-                       CS_PAGE_INC(o, create);
-                       CS_PAGESTATE_DEC(o, CPS_CACHED);
+                       cs_page_inc(o, CS_total);
+                       cs_page_inc(o, CS_create);
+                       cs_pagestate_dec(o, CPS_CACHED);
                }
        } else {
                page = ERR_PTR(-ENOMEM);
@@ -238,7 +254,7 @@ struct cl_page *cl_page_find(const struct lu_env *env,
        ENTRY;
 
        hdr = cl_object_header(o);
-       CS_PAGE_INC(o, lookup);
+       cs_page_inc(o, CS_lookup);
 
         CDEBUG(D_PAGE, "%lu@"DFID" %p %lx %d\n",
                idx, PFID(&hdr->coh_lu.loh_fid), vmpage, vmpage->private, type);
@@ -258,7 +274,7 @@ struct cl_page *cl_page_find(const struct lu_env *env,
                  */
                 page = cl_vmpage_page(vmpage, o);
                if (page != NULL) {
-                       CS_PAGE_INC(o, hit);
+                       cs_page_inc(o, CS_hit);
                        RETURN(page);
                }
         }
@@ -328,8 +344,8 @@ static void cl_page_state_set0(const struct lu_env *env,
        PASSERT(env, page, page->cp_state == old);
        PASSERT(env, page, equi(state == CPS_OWNED, page->cp_owner != NULL));
 
-       CS_PAGESTATE_DEC(page->cp_obj, page->cp_state);
-       CS_PAGESTATE_INC(page->cp_obj, state);
+       cs_pagestate_dec(page->cp_obj, page->cp_state);
+       cs_pagestate_inc(page->cp_obj, state);
        cl_page_state_set_trust(page, state);
        EXIT;
 }