[PATCH -next v2] mm/mmap_lock: fix warning when CONFIG_TRACING is not defined

From: Bixuan Cui
Date: Sun May 30 2021 - 23:36:33 EST


Fix the warning: [-Wunused-function]
mm/mmap_lock.c:157:20: warning: ‘get_mm_memcg_path’ defined but not used
static const char *get_mm_memcg_path(struct mm_struct *mm)
^~~~~~~~~~~~~~~~~

Move get_mm_memcg_path() into #ifdef CONFIG_TRACING.

Signed-off-by: Bixuan Cui <cuibixuan@xxxxxxxxxx>
Acked-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
---
Changes in v2:
Move get_mm_memcg_path() into #ifdef CONFIG_TRACING to fix the warning.

mm/mmap_lock.c | 60 ++++++++++++++++++++++++++------------------------
1 file changed, 31 insertions(+), 29 deletions(-)

diff --git a/mm/mmap_lock.c b/mm/mmap_lock.c
index 03ee85c696ef..29e99af73144 100644
--- a/mm/mmap_lock.c
+++ b/mm/mmap_lock.c
@@ -142,6 +142,37 @@ static inline void put_memcg_path_buf(void)
rcu_read_unlock();
}

+#define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
+ do { \
+ const char *memcg_path; \
+ preempt_disable(); \
+ memcg_path = get_mm_memcg_path(mm); \
+ trace_mmap_lock_##type(mm, \
+ memcg_path != NULL ? memcg_path : "", \
+ ##__VA_ARGS__); \
+ if (likely(memcg_path != NULL)) \
+ put_memcg_path_buf(); \
+ preempt_enable(); \
+ } while (0)
+
+#else /* !CONFIG_MEMCG */
+
+int trace_mmap_lock_reg(void)
+{
+ return 0;
+}
+
+void trace_mmap_lock_unreg(void)
+{
+}
+
+#define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
+ trace_mmap_lock_##type(mm, "", ##__VA_ARGS__)
+
+#endif /* CONFIG_MEMCG */
+
+#ifdef CONFIG_TRACING
+#ifdef CONFIG_MEMCG
/*
* Write the given mm_struct's memcg path to a percpu buffer, and return a
* pointer to it. If the path cannot be determined, or no buffer was available
@@ -175,37 +206,8 @@ static const char *get_mm_memcg_path(struct mm_struct *mm)
out:
return buf;
}
-
-#define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
- do { \
- const char *memcg_path; \
- preempt_disable(); \
- memcg_path = get_mm_memcg_path(mm); \
- trace_mmap_lock_##type(mm, \
- memcg_path != NULL ? memcg_path : "", \
- ##__VA_ARGS__); \
- if (likely(memcg_path != NULL)) \
- put_memcg_path_buf(); \
- preempt_enable(); \
- } while (0)
-
-#else /* !CONFIG_MEMCG */
-
-int trace_mmap_lock_reg(void)
-{
- return 0;
-}
-
-void trace_mmap_lock_unreg(void)
-{
-}
-
-#define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
- trace_mmap_lock_##type(mm, "", ##__VA_ARGS__)
-
#endif /* CONFIG_MEMCG */

-#ifdef CONFIG_TRACING
/*
* Trace calls must be in a separate file, as otherwise there's a circular
* dependency between linux/mmap_lock.h and trace/events/mmap_lock.h.
--
2.17.1