[tip:,timers/core] vdso/timens: Always provide arch_get_vdso_data() prototype for vdso

Message ID 168556259256.404.5823615515338296247.tip-bot2@tip-bot2
State New
Headers
Series [tip:,timers/core] vdso/timens: Always provide arch_get_vdso_data() prototype for vdso |

Commit Message

tip-bot2 for Thomas Gleixner May 31, 2023, 7:49 p.m. UTC
  The following commit has been merged into the timers/core branch of tip:

Commit-ID:     b7a7ce1bb77b19ff2859d365da96285340fbc145
Gitweb:        https://git.kernel.org/tip/b7a7ce1bb77b19ff2859d365da96285340fbc145
Author:        Arnd Bergmann <arnd@arndb.de>
AuthorDate:    Wed, 17 May 2023 15:11:02 +02:00
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Wed, 31 May 2023 21:45:49 +02:00

vdso/timens: Always provide arch_get_vdso_data() prototype for vdso

The arch_get_vdso_data() function is defined separately on each architecture,
but only called when CONFIG_TIME_NS is set. If the definition is a global
function, this causes a W=1 warning without TIME_NS:

arch/x86/entry/vdso/vma.c:35:19: error: no previous prototype for 'arch_get_vdso_data' [-Werror=missing-prototypes]

Move the prototype out of the #ifdef block to reliably turn off that
warning.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20230517131102.934196-15-arnd@kernel.org
---
 include/linux/time_namespace.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Patch

diff --git a/include/linux/time_namespace.h b/include/linux/time_namespace.h
index bb9d3f5..03d9c5a 100644
--- a/include/linux/time_namespace.h
+++ b/include/linux/time_namespace.h
@@ -44,7 +44,6 @@  struct time_namespace *copy_time_ns(unsigned long flags,
 				    struct time_namespace *old_ns);
 void free_time_ns(struct time_namespace *ns);
 void timens_on_fork(struct nsproxy *nsproxy, struct task_struct *tsk);
-struct vdso_data *arch_get_vdso_data(void *vvar_page);
 struct page *find_timens_vvar_page(struct vm_area_struct *vma);
 
 static inline void put_time_ns(struct time_namespace *ns)
@@ -163,4 +162,6 @@  static inline ktime_t timens_ktime_to_host(clockid_t clockid, ktime_t tim)
 }
 #endif
 
+struct vdso_data *arch_get_vdso_data(void *vvar_page);
+
 #endif /* _LINUX_TIMENS_H */