All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2] x86, boot: add missing declaration of string functions
@ 2017-01-07  9:38 Nicholas Mc Guire
  2017-01-09 10:57 ` [tip:x86/urgent] x86/boot: Add " tip-bot for Nicholas Mc Guire
  0 siblings, 1 reply; 2+ messages in thread
From: Nicholas Mc Guire @ 2017-01-07  9:38 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: Thomas Gleixner, Ingo Molnar, x86, linux-kernel,
	Nicholas Mc Guire

Add the missing declarations of basic string functions to string.h to allow
a clean build.

Fixes: commit 5be865661516 ("String-handling functions for the new x86 setup code.")
Link: http://lkml.org/lkml/2017/1/5/109
Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
---

V2: declare the string functions extern to "highlight the API declarations like the
    rest of the kernel does" as suggested by Ingo Molnar <mingo@kernel.org>

sparse issues: a set of warnings about missing declarations:
arch/x86/purgatory/../boot/string.c:18:5: warning: symbol 'memcmp' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:26:5: warning: symbol 'strcmp' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:42:5: warning: symbol 'strncmp' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:58:8: warning: symbol 'strnlen' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:69:14: warning: symbol 'atou' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:99:20: warning: symbol 'simple_strtoull' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:128:8: warning: symbol 'strlen' was not declared. Should it be static?
arch/x86/purgatory/../boot/string.c:142:6: warning: symbol 'strstr' was not declared. Should it be static?

This patch has one checkpatch warning about the use of simple_strtoul which
is obsolete. As this is an independent implementation it is not clear if
the changes made in simple_strtoul -> _kstrtoull might also need to be
applied here ?

Patch was compile tested with: x86_64_defconfig

Patch is against 4.10-rc2 (localversion-next is next-20170106)

 arch/x86/boot/string.c |  1 +
 arch/x86/boot/string.h |  9 +++++++++
 2 files changed, 10 insertions(+)

diff --git a/arch/x86/boot/string.c b/arch/x86/boot/string.c
index cc3bd58..9e240fc 100644
--- a/arch/x86/boot/string.c
+++ b/arch/x86/boot/string.c
@@ -14,6 +14,7 @@
 
 #include <linux/types.h>
 #include "ctype.h"
+#include "string.h"
 
 int memcmp(const void *s1, const void *s2, size_t len)
 {
diff --git a/arch/x86/boot/string.h b/arch/x86/boot/string.h
index 725e820..f6ee139 100644
--- a/arch/x86/boot/string.h
+++ b/arch/x86/boot/string.h
@@ -18,4 +18,13 @@ int memcmp(const void *s1, const void *s2, size_t len);
 #define memset(d,c,l) __builtin_memset(d,c,l)
 #define memcmp	__builtin_memcmp
 
+extern int strcmp(const char *str1, const char *str2);
+extern int strncmp(const char *cs, const char *ct, size_t count);
+extern size_t strlen(const char *s);
+extern char *strstr(const char *s1, const char *s2);
+extern size_t strnlen(const char *s, size_t maxlen);
+extern unsigned int atou(const char *s);
+extern unsigned long long simple_strtoull(const char *cp,
+				    char **endp, unsigned int base);
+
 #endif /* BOOT_STRING_H */
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [tip:x86/urgent] x86/boot: Add missing declaration of string functions
  2017-01-07  9:38 [PATCH V2] x86, boot: add missing declaration of string functions Nicholas Mc Guire
@ 2017-01-09 10:57 ` tip-bot for Nicholas Mc Guire
  0 siblings, 0 replies; 2+ messages in thread
From: tip-bot for Nicholas Mc Guire @ 2017-01-09 10:57 UTC (permalink / raw)
  To: linux-tip-commits; +Cc: hpa, linux-kernel, mingo, tglx, hofrat

Commit-ID:  fac69d0efad08fc15e4dbfc116830782acc0dc9a
Gitweb:     http://git.kernel.org/tip/fac69d0efad08fc15e4dbfc116830782acc0dc9a
Author:     Nicholas Mc Guire <hofrat@osadl.org>
AuthorDate: Sat, 7 Jan 2017 10:38:31 +0100
Committer:  Thomas Gleixner <tglx@linutronix.de>
CommitDate: Mon, 9 Jan 2017 11:53:05 +0100

x86/boot: Add missing declaration of string functions

Add the missing declarations of basic string functions to string.h to allow
a clean build.

Fixes: 5be865661516 ("String-handling functions for the new x86 setup code.")
Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
Link: http://lkml.kernel.org/r/1483781911-21399-1-git-send-email-hofrat@osadl.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

---
 arch/x86/boot/string.c | 1 +
 arch/x86/boot/string.h | 9 +++++++++
 2 files changed, 10 insertions(+)

diff --git a/arch/x86/boot/string.c b/arch/x86/boot/string.c
index cc3bd58..9e240fc 100644
--- a/arch/x86/boot/string.c
+++ b/arch/x86/boot/string.c
@@ -14,6 +14,7 @@
 
 #include <linux/types.h>
 #include "ctype.h"
+#include "string.h"
 
 int memcmp(const void *s1, const void *s2, size_t len)
 {
diff --git a/arch/x86/boot/string.h b/arch/x86/boot/string.h
index 725e820..113588d 100644
--- a/arch/x86/boot/string.h
+++ b/arch/x86/boot/string.h
@@ -18,4 +18,13 @@ int memcmp(const void *s1, const void *s2, size_t len);
 #define memset(d,c,l) __builtin_memset(d,c,l)
 #define memcmp	__builtin_memcmp
 
+extern int strcmp(const char *str1, const char *str2);
+extern int strncmp(const char *cs, const char *ct, size_t count);
+extern size_t strlen(const char *s);
+extern char *strstr(const char *s1, const char *s2);
+extern size_t strnlen(const char *s, size_t maxlen);
+extern unsigned int atou(const char *s);
+extern unsigned long long simple_strtoull(const char *cp, char **endp,
+					  unsigned int base);
+
 #endif /* BOOT_STRING_H */

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-01-09 10:58 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-07  9:38 [PATCH V2] x86, boot: add missing declaration of string functions Nicholas Mc Guire
2017-01-09 10:57 ` [tip:x86/urgent] x86/boot: Add " tip-bot for Nicholas Mc Guire

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.