X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=src%2Fpatches%2Fqemu-4.1.0-build-fix-glibc-2.31.patch;fp=src%2Fpatches%2Fqemu-4.1.0-build-fix-glibc-2.31.patch;h=0000000000000000000000000000000000000000;hp=37c744d3bdbcabc8dc7a3d6822210fd2a05d3ea1;hb=d06693b487cc80a3d8ed654edde76f407b13fc78;hpb=ae94f85b0210b5e2daf7f1ccdbcc7cf3b25388d9 diff --git a/src/patches/qemu-4.1.0-build-fix-glibc-2.31.patch b/src/patches/qemu-4.1.0-build-fix-glibc-2.31.patch deleted file mode 100644 index 37c744d3bd..0000000000 --- a/src/patches/qemu-4.1.0-build-fix-glibc-2.31.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 0f1f2d4596aee037d3ccbcf10592466daa54107f Mon Sep 17 00:00:00 2001 -From: Laurent Vivier -Date: Tue, 12 Nov 2019 15:25:56 +0100 -Subject: [PATCH] linux-user: remove host stime() syscall - -stime() has been withdrawn from glibc -(12cbde1dae6f "Use clock_settime to implement stime; withdraw stime.") - -Implement the target stime() syscall using host -clock_settime(CLOCK_REALTIME, ...) as it is done internally in glibc. - -Tested qemu-ppc/x86_64 with: - - #include - #include - - int main(void) - { - time_t t; - int ret; - - /* date -u -d"2019-11-12T15:11:00" "+%s" */ - t = 1573571460; - ret = stime(&t); - printf("ret %d\n", ret); - return 0; - } - - # date; ./stime; date - Tue Nov 12 14:18:32 UTC 2019 - ret 0 - Tue Nov 12 15:11:00 UTC 2019 - -Buglink: https://bugs.launchpad.net/qemu/+bug/1852115 -Reported-by: Cole Robinson -Signed-off-by: Laurent Vivier -Reviewed-by: Peter Maydell -Message-Id: <20191112142556.6335-1-laurent@vivier.eu> ---- - linux-user/syscall.c | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 4e97bcf..ce399a5 100644 ---- a/linux-user/syscall.c -+++ b/linux-user/syscall.c -@@ -7764,10 +7764,12 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1, - #ifdef TARGET_NR_stime /* not on alpha */ - case TARGET_NR_stime: - { -- time_t host_time; -- if (get_user_sal(host_time, arg1)) -+ struct timespec ts; -+ ts.tv_nsec = 0; -+ if (get_user_sal(ts.tv_sec, arg1)) { - return -TARGET_EFAULT; -- return get_errno(stime(&host_time)); -+ } -+ return get_errno(clock_settime(CLOCK_REALTIME, &ts)); - } - #endif - #ifdef TARGET_NR_alarm /* not on alpha */ --- -1.8.3.1 -