lkml.org 
[lkml]   [2019]   [Jun]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subjectqemu build error with latest kernel headers due to net: socket: implement 64-bit timestamps
Date
Arnd,

with kernel headers from the latest kernel QEMU fails to build if the user run
configure with --target-list=s390x-linux-user:

when the kernel has commit 0768e17073dc527ccd18ed5f96ce85f9985e9115
net: socket: implement 64-bit timestamps



/root/rpmbuild/BUILD/qemu-4.0.50/linux-user/ioctls.h:222:9: error: 'SIOCGSTAMP' undeclared here (not in a function); did you mean 'SIOCSRARP'?
222 | IOCTL(SIOCGSTAMP, IOC_R, MK_PTR(MK_STRUCT(STRUCT_timeval)))
| ^~~~~~~~~~

It seems that qemu build relies on SIOCGSTAMP to be present via sys/socket.h.

Adding this patch to qemu helps.

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index efa3ec2837..7332be9b06 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -34,6 +34,7 @@
#include <sys/resource.h>
#include <sys/swap.h>
#include <linux/capability.h>
+#include <linux/sockios.h>
#include <sched.h>
#include <sys/timex.h>
#include <sys/socket.h>
But it is also a change in behavior of the kernel headers. (but only for programs that
use sys/socket.h instead of linux/sockios.h.

\
 
 \ /
  Last update: 2019-06-03 19:25    [W:0.216 / U:0.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site