fbc8207b73
Update to qemu 3.1.0-rc5. Is almost certainly the last rc, so should be same as 3.1.0 final. Putting into devel project 'early' because of SLE and Leap needs, not to get into Factory early. Look for the final 3.1 within a week. OBS-URL: https://build.opensuse.org/request/show/655897 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=433
43 lines
1.7 KiB
Diff
43 lines
1.7 KiB
Diff
From 1f837f8996433ddabfab0d17d1bc18fc13f1d64e 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>
|
|
[BR: minor edits to pass qemu's checkpatch script]
|
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
|
---
|
|
linux-user/syscall.c | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
|
index 331177716b..f3cdecce7e 100644
|
|
--- a/linux-user/syscall.c
|
|
+++ b/linux-user/syscall.c
|
|
@@ -4814,6 +4814,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)) {
|
|
@@ -4832,6 +4837,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);
|