724a14a256
Update to rc4 of v2.9.0. Also includes a few other fixes, and a number of tweaks to the spec files. I'd be happy to answer any questions about all those spec file changes, I believe they were all in the direction of a more correct and maintainable spec file. Since this is still in rc phase, let's keep it in devel project. Final release should appear in time for Beta2 of SLE12SP3. Delta from previous: Added Alex's patch for keyboard empty event. OBS-URL: https://build.opensuse.org/request/show/487699 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=334
41 lines
1.6 KiB
Diff
41 lines
1.6 KiB
Diff
From 551aca5f7e7a604d202dab434140804e5d6ac6eb Mon Sep 17 00:00:00 2001
|
|
From: Alexander Graf <agraf@suse.de>
|
|
Date: Tue, 14 Apr 2009 16:27:36 +0200
|
|
Subject: [PATCH] qemu-cvs-ioctl_nodirection
|
|
|
|
the direction given in the ioctl should be correct so we can assume the
|
|
communication is uni-directional. The alsa developers did not like this
|
|
concept though and declared ioctls IOC_R and IOC_W even though they were
|
|
IOC_RW.
|
|
|
|
Signed-off-by: Alexander Graf <agraf@suse.de>
|
|
Signed-off-by: Ulrich Hecht <uli@suse.de>
|
|
---
|
|
linux-user/syscall.c | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
|
index 891ee1c6ea..2f82a7d1a6 100644
|
|
--- a/linux-user/syscall.c
|
|
+++ b/linux-user/syscall.c
|
|
@@ -5648,6 +5648,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
|
arg_type++;
|
|
target_size = thunk_type_size(arg_type, 0);
|
|
switch(ie->access) {
|
|
+ /* FIXME: actually the direction given in the ioctl should be
|
|
+ * correct so we can assume the communication is uni-directional.
|
|
+ * The alsa developers did not like this concept though and
|
|
+ * declared ioctls IOC_R and IOC_W even though they were IOC_RW.*/
|
|
+/*
|
|
case IOC_R:
|
|
ret = get_errno(safe_ioctl(fd, ie->host_cmd, buf_temp));
|
|
if (!is_error(ret)) {
|
|
@@ -5666,6 +5671,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
|
unlock_user(argptr, arg, 0);
|
|
ret = get_errno(safe_ioctl(fd, ie->host_cmd, buf_temp));
|
|
break;
|
|
+*/
|
|
default:
|
|
case IOC_RW:
|
|
argptr = lock_user(VERIFY_READ, arg, target_size, 1);
|