Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1580235 > unrolled thread

[PATCH v3 0/2] x86/purgatory: Fix sparse warning, symbol not declared

Started by"Tobin C. Harding" <me@tobin.cc>
First post2017-02-14 03:50 +0100
Last post2017-02-14 03:50 +0100
Articles 2 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH v3 0/2] x86/purgatory: Fix sparse warning, symbol not declared "Tobin C. Harding" <me@tobin.cc> - 2017-02-14 03:50 +0100
    [PATCH v3 2/2] x86/purgatory: Fix sparse warning, symbol not declared "Tobin C. Harding" <me@tobin.cc> - 2017-02-14 03:50 +0100

#1580235 — [PATCH v3 0/2] x86/purgatory: Fix sparse warning, symbol not declared

From"Tobin C. Harding" <me@tobin.cc>
Date2017-02-14 03:50 +0100
Subject[PATCH v3 0/2] x86/purgatory: Fix sparse warning, symbol not declared
Message-ID<taBlL-40x-3@gated-at.bofh.it>
Sparse emits several 'symbol not declared' warnings for various
functions and variables. 

Add static keyword to functions and variables which have file scope
only.

Add header file with funciton declaration. Add preprocessor guard and
include header in ASM file. Include header in C file contianing function
definition.

V3:
 * Add preprocessor guard.

V2:
 * Add header file.

Tobin C. Harding (2):
  x86/purgatory: Fix sparse warning, symbol not declared
  x86/purgatory: Fix sparse warning, symbol not declared

 arch/x86/purgatory/purgatory.c    | 11 ++++++-----
 arch/x86/purgatory/purgatory.h    | 10 ++++++++++
 arch/x86/purgatory/setup-x86_64.S |  4 ++--
 3 files changed, 18 insertions(+), 7 deletions(-)
 create mode 100644 arch/x86/purgatory/purgatory.h

-- 
2.7.4

[toc] | [next] | [standalone]


#1580236 — [PATCH v3 2/2] x86/purgatory: Fix sparse warning, symbol not declared

From"Tobin C. Harding" <me@tobin.cc>
Date2017-02-14 03:50 +0100
Subject[PATCH v3 2/2] x86/purgatory: Fix sparse warning, symbol not declared
Message-ID<taBlM-40x-7@gated-at.bofh.it>
In reply to#1580235
Sparse emits warning, 'symbol not declared' for a function that has
neither file scope nor a forward declaration. The only call site is
in an ASM file.

Add a header file with the function declaration. Include the header
file in the C source file defining the function in order to fix the
sparse warning. Include the header file in ASM file to document the
usage. Use preprocessor guard to enable C header file to be included
in ASM.

Signed-off-by: Tobin C. Harding <me@tobin.cc>
---
 arch/x86/purgatory/purgatory.c    |  1 +
 arch/x86/purgatory/purgatory.h    | 10 ++++++++++
 arch/x86/purgatory/setup-x86_64.S |  4 ++--
 3 files changed, 13 insertions(+), 2 deletions(-)
 create mode 100644 arch/x86/purgatory/purgatory.h

diff --git a/arch/x86/purgatory/purgatory.c b/arch/x86/purgatory/purgatory.c
index 2a5f437..b6d5c89 100644
--- a/arch/x86/purgatory/purgatory.c
+++ b/arch/x86/purgatory/purgatory.c
@@ -11,6 +11,7 @@
  */
 
 #include "sha256.h"
+#include "purgatory.h"
 #include "../boot/string.h"
 
 struct sha_region {
diff --git a/arch/x86/purgatory/purgatory.h b/arch/x86/purgatory/purgatory.h
new file mode 100644
index 0000000..cca6f6e
--- /dev/null
+++ b/arch/x86/purgatory/purgatory.h
@@ -0,0 +1,10 @@
+#ifndef __ASSEMBLY__
+
+#ifndef PURGATORY_H
+#define PURGATORY_H
+
+extern void purgatory(void);
+
+#endif /* PURGATORY_H */
+
+#endif	/* __ASSEMBLY__ */
diff --git a/arch/x86/purgatory/setup-x86_64.S b/arch/x86/purgatory/setup-x86_64.S
index fe3c91b..8045994 100644
--- a/arch/x86/purgatory/setup-x86_64.S
+++ b/arch/x86/purgatory/setup-x86_64.S
@@ -9,8 +9,8 @@
  * This source code is licensed under the GNU General Public License,
  * Version 2.  See the file COPYING for more details.
  */
-
-	.text
+#include "purgatory.h"	
+ 	.text
 	.globl purgatory_start
 	.balign 16
 purgatory_start:
-- 
2.7.4

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web