Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:olh:xen-4.15
kexec-tools
kexec-tools-SYS_getrandom.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File kexec-tools-SYS_getrandom.patch of Package kexec-tools
From: Petr Tesarik <ptesarik@suse.com> Subject: Define SYS_getrandom if needed Upstream: never, build fix for SLE12 SLE12 did not provide a definition for SYS_getrandom. Signed-off-by: Petr Tesarik <ptesarik@suse.com> --- configure.ac | 1 + kexec/arch/arm64/kexec-arm64.c | 5 +++++ kexec/arch/i386/x86-linux-setup.c | 11 ++++++++++- 3 files changed, 16 insertions(+), 1 deletion(-) --- a/configure.ac +++ b/configure.ac @@ -203,6 +203,7 @@ if test "$with_xen" = dl ; then AC_MSG_NOTICE([Xen support disabled]))]) fi +AC_CHECK_HEADERS([sys/random.h]) dnl Check for the Xen kexec_status hypercall - reachable from --with-xen=yes|dl if test "$ac_cv_lib_xenctrl_xc_kexec_load" = yes ; then AC_CHECK_LIB(xenctrl, xc_kexec_status, --- a/kexec/arch/arm64/kexec-arm64.c +++ b/kexec/arch/arm64/kexec-arm64.c @@ -34,6 +34,11 @@ #include "mem_regions.h" #include "arch/options.h" +#ifndef __NR_getrandom +#define __NR_getrandom 278 +__SYSCALL(__NR_getrandom, sys_getrandom) +#endif + #define ROOT_NODE_ADDR_CELLS_DEFAULT 1 #define ROOT_NODE_SIZE_CELLS_DEFAULT 1 --- a/kexec/arch/i386/x86-linux-setup.c +++ b/kexec/arch/i386/x86-linux-setup.c @@ -24,7 +24,6 @@ #include <limits.h> #include <sys/types.h> #include <sys/stat.h> -#include <sys/random.h> #include <fcntl.h> #include <sys/ioctl.h> #include <linux/fb.h> @@ -38,6 +37,16 @@ #include "x86-linux-setup.h" #include "../../kexec/kexec-syscall.h" +#ifdef HAVE_SYS_RANDOM_H +#include <sys/random.h> +#else +#include <linux/random.h> +static ssize_t getrandom(void *buf, size_t buflen, unsigned int flags) +{ + return syscall(SYS_getrandom, buf, buflen, flags); +} +#endif + #ifndef VIDEO_CAPABILITY_64BIT_BASE #define VIDEO_CAPABILITY_64BIT_BASE (1 << 1) /* Frame buffer base is 64-bit */ #endif
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor