summaryrefslogtreecommitdiffstats
path: root/arch/x86/boot/compressed/string.c
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2019-06-03 13:00:40 +0200
committerJoerg Roedel <jroedel@suse.de>2019-06-03 13:00:40 +0200
commit2de03c11171544bd23e18539f65b3b561d57ff76 (patch)
treee207052e8cbb53f587c260617c16f97fa9f7d05d /arch/x86/boot/compressed/string.c
parente314a7c92b3217e893cbe03b944c7afc9cbd3e4c (diff)
parentf2c7c76c5d0a443053e94adb9f0918fa2fb85c3a (diff)
downloadblackbird-op-linux-2de03c11171544bd23e18539f65b3b561d57ff76.tar.gz
blackbird-op-linux-2de03c11171544bd23e18539f65b3b561d57ff76.zip
Merge tag 'v5.2-rc3' into x86/vt-d
Linux 5.2-rc3
Diffstat (limited to 'arch/x86/boot/compressed/string.c')
-rw-r--r--arch/x86/boot/compressed/string.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/x86/boot/compressed/string.c b/arch/x86/boot/compressed/string.c
index 19dbbcdd1a53..81fc1eaa3229 100644
--- a/arch/x86/boot/compressed/string.c
+++ b/arch/x86/boot/compressed/string.c
@@ -11,7 +11,7 @@
#include "../string.c"
#ifdef CONFIG_X86_32
-static void *__memcpy(void *dest, const void *src, size_t n)
+static void *____memcpy(void *dest, const void *src, size_t n)
{
int d0, d1, d2;
asm volatile(
@@ -25,7 +25,7 @@ static void *__memcpy(void *dest, const void *src, size_t n)
return dest;
}
#else
-static void *__memcpy(void *dest, const void *src, size_t n)
+static void *____memcpy(void *dest, const void *src, size_t n)
{
long d0, d1, d2;
asm volatile(
@@ -56,7 +56,7 @@ void *memmove(void *dest, const void *src, size_t n)
const unsigned char *s = src;
if (d <= s || d - s >= n)
- return __memcpy(dest, src, n);
+ return ____memcpy(dest, src, n);
while (n-- > 0)
d[n] = s[n];
@@ -71,5 +71,11 @@ void *memcpy(void *dest, const void *src, size_t n)
warn("Avoiding potentially unsafe overlapping memcpy()!");
return memmove(dest, src, n);
}
- return __memcpy(dest, src, n);
+ return ____memcpy(dest, src, n);
}
+
+#ifdef CONFIG_KASAN
+extern void *__memset(void *s, int c, size_t n) __alias(memset);
+extern void *__memmove(void *dest, const void *src, size_t n) __alias(memmove);
+extern void *__memcpy(void *dest, const void *src, size_t n) __alias(memcpy);
+#endif
OpenPOWER on IntegriCloud