8c721a87ae
- Remove deprecated patch "work-around-SA_RESTART-race" (boo#982208) - Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6 * Patches dropped: 0002-XXX-work-around-SA_RESTART-race-wit.patch 0003-qemu-0.9.0.cvs-binfmt.patch 0004-qemu-cvs-alsa_bitfield.patch 0005-qemu-cvs-alsa_ioctl.patch 0006-qemu-cvs-alsa_mmap.patch 0007-qemu-cvs-gettimeofday.patch 0008-qemu-cvs-ioctl_debug.patch 0009-qemu-cvs-ioctl_nodirection.patch 0010-block-vmdk-Support-creation-of-SCSI.patch 0011-linux-user-add-binfmt-wrapper-for-a.patch 0012-PPC-KVM-Disable-mmu-notifier-check.patch 0013-linux-user-fix-segfault-deadlock.patch 0014-linux-user-binfmt-support-host-bina.patch 0015-linux-user-Ignore-broken-loop-ioctl.patch 0016-linux-user-lock-tcg.patch 0017-linux-user-Run-multi-threaded-code-.patch 0018-linux-user-lock-tb-flushing-too.patch 0019-linux-user-Fake-proc-cpuinfo.patch 0020-linux-user-implement-FS_IOC_GETFLAG.patch 0021-linux-user-implement-FS_IOC_SETFLAG.patch 0022-linux-user-XXX-disable-fiemap.patch 0023-slirp-nooutgoing.patch 0024-vnc-password-file-and-incoming-conn.patch 0025-linux-user-add-more-blk-ioctls.patch 0026-linux-user-use-target_ulong.patch 0027-block-Add-support-for-DictZip-enabl.patch 0028-block-Add-tar-container-format.patch OBS-URL: https://build.opensuse.org/request/show/408549 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=305
41 lines
1.6 KiB
Diff
41 lines
1.6 KiB
Diff
From 31a5e0ab101e1549d534a63fb5e9e94007e812f8 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 d693f9d..0858920 100644
|
|
--- a/linux-user/syscall.c
|
|
+++ b/linux-user/syscall.c
|
|
@@ -4055,6 +4055,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(ioctl(fd, ie->host_cmd, buf_temp));
|
|
if (!is_error(ret)) {
|
|
@@ -4073,6 +4078,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
|
unlock_user(argptr, arg, 0);
|
|
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
|
break;
|
|
+*/
|
|
default:
|
|
case IOC_RW:
|
|
argptr = lock_user(VERIFY_READ, arg, target_size, 1);
|