The earliest boot code has its own string functions, since it can't
use those included in the main kernel image. Under some compiler
versions eboot.c fails to include a suitable declaration, resulting in
the warning:
In file included from arch/x86/boot/compressed/eboot.c:287:0:
arch/x86/boot/compressed/../../../../drivers/firmware/efi/efi-stub-helper.c: In function 'efi_relocate_kernel':
>> arch/x86/boot/compressed/../../../../drivers/firmware/efi/efi-stub-helper.c:566:2: warning: implicit declaration of function 'memcpy'; did you mean 'memchr'? [-Wimplicit-function-declaration]
memcpy((void *)new_addr, (void *)cur_image_addr, image_size);
^~~~~~
memchr
Include "../string.h" which provides the correct declarations. This
was done upstream as part of commit 393f203f5f "x86_64: kasan: add
interceptors for memset/memmove/memcpy functions".
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>