diff mbox

powerpc/ftrace: add ftrace.h, fix sparse warning

Message ID 1488790186-4828-1-git-send-email-me@tobin.cc (mailing list archive)
State Accepted
Headers show

Commit Message

Tobin C. Harding March 6, 2017, 8:49 a.m. UTC
Sparse emits warning: symbol 'prepare_ftrace_return' was not
declared. Should it be static? prepare_ftrace_return() is called
from assembler and should not be static. Adding a header file
declaring the function will fix the sparse warning while adding
documentation to the call.

Add header file ftrace.h with single function declaration. Protect
declaration with preprocessor guard so it may be included in
assembly. Include new header in all files that call
prepare_ftrace_return() and in ftrace.c where function is defined.

Signed-off-by: Tobin C. Harding <me@tobin.cc>
---

Github issue: #37 Fix sparse warnings

Tested by building on Power8.

There are a bunch of these in arch/powerpc/kernel/. Do we want to add
a header for each one, cluttering up the directory to fix the sparse
warnings? 

 arch/powerpc/kernel/entry_32.S | 2 ++
 arch/powerpc/kernel/entry_64.S | 2 ++
 arch/powerpc/kernel/ftrace.c   | 1 +
 arch/powerpc/kernel/ftrace.h   | 9 +++++++++
 4 files changed, 14 insertions(+)
 create mode 100644 arch/powerpc/kernel/ftrace.h

Comments

Michael Ellerman March 21, 2017, 11:36 a.m. UTC | #1
On Mon, 2017-03-06 at 08:49:46 UTC, "Tobin C. Harding" wrote:
> Sparse emits warning: symbol 'prepare_ftrace_return' was not
> declared. Should it be static? prepare_ftrace_return() is called
> from assembler and should not be static. Adding a header file
> declaring the function will fix the sparse warning while adding
> documentation to the call.
> 
> Add header file ftrace.h with single function declaration. Protect
> declaration with preprocessor guard so it may be included in
> assembly. Include new header in all files that call
> prepare_ftrace_return() and in ftrace.c where function is defined.
> 
> Signed-off-by: Tobin C. Harding <me@tobin.cc>

Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/b3a7864c6feb0fb30bc2cd37265707

cheers
diff mbox

Patch

diff --git a/arch/powerpc/kernel/entry_32.S b/arch/powerpc/kernel/entry_32.S
index 3841d74..bb7284c 100644
--- a/arch/powerpc/kernel/entry_32.S
+++ b/arch/powerpc/kernel/entry_32.S
@@ -35,6 +35,8 @@ 
 #include <asm/ptrace.h>
 #include <asm/export.h>
 
+#include "ftrace.h"
+
 /*
  * MSR_KERNEL is > 0x10000 on 4xx/Book-E since it include MSR_CE.
  */
diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S
index 6432d4b..8591026 100644
--- a/arch/powerpc/kernel/entry_64.S
+++ b/arch/powerpc/kernel/entry_64.S
@@ -40,6 +40,8 @@ 
 #include <asm/ppc-opcode.h>
 #include <asm/export.h>
 
+#include "ftrace.h"
+
 /*
  * System calls.
  */
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c
index 5c9f50c..d4d3bb1 100644
--- a/arch/powerpc/kernel/ftrace.c
+++ b/arch/powerpc/kernel/ftrace.c
@@ -26,6 +26,7 @@ 
 #include <asm/ftrace.h>
 #include <asm/syscall.h>
 
+#include "ftrace.h"
 
 #ifdef CONFIG_DYNAMIC_FTRACE
 static unsigned int
diff --git a/arch/powerpc/kernel/ftrace.h b/arch/powerpc/kernel/ftrace.h
new file mode 100644
index 0000000..dc27dd7
--- /dev/null
+++ b/arch/powerpc/kernel/ftrace.h
@@ -0,0 +1,9 @@ 
+#ifndef _FTRACE_H
+#define _FTRACE_H
+
+#ifndef __ASSEMBLER__
+
+unsigned long prepare_ftrace_return(unsigned long parent, unsigned long ip);
+
+#endif	/* __ASSEMBLER__ */
+#endif	/* _FTRACE_H */