All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2
@ 2019-09-04 12:59 Aleksandar Markovic
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
                   ` (7 more replies)
  0 siblings, 8 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

A set of misc linux user patches for 4.2.

v5->v6:

  - added a patch on FIOGETOWN/FIOSETOWN ioctls
  - removed a number of patches from the series for easier review
    and integration; these patches will be submitted at a latter
    date

v4->v5:

  - added a patch containing support for two additional ioctls
  - added two patches containing fixes for four additional ioctls

v3->v4:

  - reworked the patch on semtimedop()
  - added five patches containing support for ten additional
    ioctls
  - minor improvements of code formatting

v2->v3:

  - minor code formatting improvements
  - added a patch on semtimedop()

v1->v2:

  - updated commit messages
  - minor improvements of code formatting
  - added three patches containing support for ten additional
    ioctls 

Aleksandar Markovic (6):
  linux-user: Add support for RNDRESEEDCRNG ioctl
  linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls
  linux-user: Add support for FDMSGON and FDMSGOFF ioctls
  linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT
    ioctls
  linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
  linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and
    FDGETMAXERRS ioctls

Aleksandar Rikalo (1):
  linux-user: Add support for semtimedop() syscall

Yunqiang Su (1):
  linux user: Add support for FDFLUSH ioctl

 linux-user/ioctls.h        | 18 ++++++++++++++++++
 linux-user/syscall.c       | 41 +++++++++++++++++++++++++++++++++++++++++
 linux-user/syscall_defs.h  | 37 +++++++++++++++++++++++++++++++++++++
 linux-user/syscall_types.h | 12 ++++++++++++
 4 files changed, 108 insertions(+)

-- 
2.7.4



^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-04 13:16   ` Aleksandar Markovic
  2019-09-06  9:59   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
                   ` (6 subsequent siblings)
  7 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Rikalo <arikalo@wavecomp.com>

Add support for semtimedop() emulation. It is based on invocation
of safe_semtimedop().

Conversion is left out of safe_semtimedop(), since other safe_xxx()
usually don't contain similar conversions.

Signed-off-by: Aleksandar Rikalo <arikalo@wavecomp.com>
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
 linux-user/syscall.c | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 8367cb1..b5bc6e4 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6649,7 +6649,43 @@ static inline abi_long host_to_target_statx(struct target_statx *host_stx,
     return 0;
 }
 #endif
+#ifdef TARGET_NR_semtimedop
+static inline abi_long do_semtimedop(int semid, abi_long ptr, unsigned nsops,
+                                     abi_long timeout)
+{
+    struct sembuf *sops;
+    struct timespec ts, *pts;
+    abi_long ret;
+
+    if (timeout) {
+        pts = &ts;
+        if (target_to_host_timespec(pts, timeout)) {
+            return -TARGET_EFAULT;
+        }
+    } else {
+        pts = NULL;
+    }
 
+    sops = g_malloc(sizeof(struct sembuf) * nsops);
+    if (sops == NULL) {
+        return -TARGET_EFAULT;
+    }
+
+    if (target_to_host_sembuf(sops, ptr, nsops)) {
+        g_free(sops);
+        return -TARGET_EFAULT;
+    }
+
+#ifdef __NR_semtimedop
+    ret = get_errno(safe_semtimedop(semid, sops, nsops, pts));
+#else
+    ret = -TARGET_ENOSYS;
+#endif
+    g_free(sops);
+
+    return ret;
+}
+#endif
 
 /* ??? Using host futex calls even when target atomic operations
    are not really atomic probably breaks things.  However implementing
@@ -9193,6 +9229,10 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
     case TARGET_NR_semop:
         return do_semop(arg1, arg2, arg3);
 #endif
+#ifdef TARGET_NR_semtimedop
+    case TARGET_NR_semtimedop:
+        return do_semtimedop(arg1, arg2, arg3, arg4);
+#endif
 #ifdef TARGET_NR_semctl
     case TARGET_NR_semctl:
         return do_semctl(arg1, arg2, arg3, arg4);
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-10  8:33   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls Aleksandar Markovic
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

RNDRESEEDCRNG is a newer ioctl (added in kernel 4.17), and an
"ifdef" guard is used for that reason in this patch.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/ioctls.h       | 3 +++
 linux-user/syscall_defs.h | 1 +
 2 files changed, 4 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 3281c97..cd9b6f9 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -246,6 +246,9 @@
   IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT))
   IOCTL(RNDZAPENTCNT, 0, TYPE_NULL)
   IOCTL(RNDCLEARPOOL, 0, TYPE_NULL)
+#ifdef RNDRESEEDCRNG
+  IOCTL(RNDRESEEDCRNG, 0, TYPE_NULL)
+#endif
 
   IOCTL(CDROMPAUSE, 0, TYPE_NULL)
   IOCTL(CDROMSTART, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 0662270..19a1d39 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -850,6 +850,7 @@ struct target_pollfd {
 #define TARGET_RNDADDTOENTCNT  TARGET_IOW('R', 0x01, int)
 #define TARGET_RNDZAPENTCNT    TARGET_IO('R', 0x04)
 #define TARGET_RNDCLEARPOOL    TARGET_IO('R', 0x06)
+#define TARGET_RNDRESEEDCRNG   TARGET_IO('R', 0x07)
 
 /* From <linux/fs.h> */
 
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-06 10:18   ` Laurent Vivier
  2019-09-10  8:34   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
                   ` (4 subsequent siblings)
  7 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

FIOGETOWN and FIOSETOWN ioctls have platform-specific definitions,
hence non-standard definition in QEMU too.

Other than that, they both have a single integer argument, and their
functionality is emulated in a straightforward way.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
 linux-user/ioctls.h       | 2 ++
 linux-user/syscall_defs.h | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index cd9b6f9..1830de9 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -177,6 +177,8 @@
 #endif
 #endif /* CONFIG_USBFS */
 
+  IOCTL(FIOGETOWN, IOC_R, MK_PTR(TYPE_INT))
+  IOCTL(FIOSETOWN, IOC_W, MK_PTR(TYPE_INT))
   IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT))
   IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq)))
   IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 19a1d39..498223b 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -758,10 +758,14 @@ struct target_pollfd {
 
 #if defined(TARGET_ALPHA) || defined(TARGET_MIPS) || defined(TARGET_SH4) ||    \
        defined(TARGET_XTENSA)
+#define TARGET_FIOGETOWN       TARGET_IOR('f', 123, int)
+#define TARGET_FIOSETOWN       TARGET_IOW('f', 124, int)
 #define TARGET_SIOCATMARK      TARGET_IOR('s', 7, int)
 #define TARGET_SIOCSPGRP       TARGET_IOW('s', 8, pid_t)
 #define TARGET_SIOCGPGRP       TARGET_IOR('s', 9, pid_t)
 #else
+#define TARGET_FIOGETOWN       0x8903
+#define TARGET_FIOSETOWN       0x8901
 #define TARGET_SIOCATMARK      0x8905
 #define TARGET_SIOCSPGRP       0x8902
 #define TARGET_SIOCGPGRP       0x8904
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
                   ` (2 preceding siblings ...)
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-10  8:39   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Yunqiang Su <ysu@wavecomp.com>

FDFLUSH is used for flushing buffers of floppy drives. Support in
QEMU is needed because some of Debian packages use this ioctl while
running post-build tests. One such example is 'tar' package.

Signed-off-by: Yunqiang Su <ysu@wavecomp.com>
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/ioctls.h       | 2 ++
 linux-user/syscall.c      | 1 +
 linux-user/syscall_defs.h | 4 ++++
 3 files changed, 7 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 1830de9..bc19448 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -112,6 +112,8 @@
      IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
 #endif
 
+     IOCTL(FDFLUSH, 0, TYPE_NULL)
+
 #ifdef FIBMAP
      IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
 #endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index b5bc6e4..6825458 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -87,6 +87,7 @@
 #include <linux/kd.h>
 #include <linux/mtio.h>
 #include <linux/fs.h>
+#include <linux/fd.h>
 #if defined(CONFIG_FIEMAP)
 #include <linux/fiemap.h>
 #endif
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 498223b..917202a 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -888,6 +888,10 @@ struct target_pollfd {
 #define TARGET_BLKROTATIONAL TARGET_IO(0x12, 126)
 #define TARGET_BLKZEROOUT TARGET_IO(0x12, 127)
 
+/* From <linux/fd.h> */
+
+#define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
+
 #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
 #define TARGET_FIGETBSZ   TARGET_IO(0x00,2)  /* get the block size used for bmap */
 
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
                   ` (3 preceding siblings ...)
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-06 10:20   ` Laurent Vivier
  2019-09-10  8:41   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
                   ` (2 subsequent siblings)
  7 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

FDMSGON and FDMSGOFF switch informational messages of floppy drives
on and off.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/ioctls.h       | 2 ++
 linux-user/syscall_defs.h | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index bc19448..b253469 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -112,6 +112,8 @@
      IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
 #endif
 
+     IOCTL(FDMSGON, 0, TYPE_NULL)
+     IOCTL(FDMSGOFF, 0, TYPE_NULL)
      IOCTL(FDFLUSH, 0, TYPE_NULL)
 
 #ifdef FIBMAP
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 917202a..4e33ef3 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -890,6 +890,8 @@ struct target_pollfd {
 
 /* From <linux/fd.h> */
 
+#define TARGET_FDMSGON        TARGET_IO(2, 0x45)
+#define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
 #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
 
 #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
                   ` (4 preceding siblings ...)
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-06 10:21   ` Laurent Vivier
  2019-09-10  8:42   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
  7 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls are misc commands
for controlling a floppy drive.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
 linux-user/ioctls.h       | 4 ++++
 linux-user/syscall_defs.h | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index b253469..c6b9d6a 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -115,6 +115,10 @@
      IOCTL(FDMSGON, 0, TYPE_NULL)
      IOCTL(FDMSGOFF, 0, TYPE_NULL)
      IOCTL(FDFLUSH, 0, TYPE_NULL)
+     IOCTL(FDRESET, 0, TYPE_NULL)
+     IOCTL(FDRAWCMD, 0, TYPE_NULL)
+     IOCTL(FDTWADDLE, 0, TYPE_NULL)
+     IOCTL(FDEJECT, 0, TYPE_NULL)
 
 #ifdef FIBMAP
      IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 4e33ef3..fa69c6a 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -893,6 +893,10 @@ struct target_pollfd {
 #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
 #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
 #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
+#define TARGET_FDRESET        TARGET_IO(2, 0x54)
+#define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
+#define TARGET_FDTWADDLE      TARGET_IO(2, 0x59)
+#define TARGET_FDEJECT        TARGET_IO(2, 0x5a)
 
 #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
 #define TARGET_FIGETBSZ   TARGET_IO(0x00,2)  /* get the block size used for bmap */
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
                   ` (5 preceding siblings ...)
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-06 10:30   ` Laurent Vivier
  2019-09-06 10:38   ` Laurent Vivier
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
  7 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls provide means for controlling
formatting of a floppy drive.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
 linux-user/ioctls.h        | 3 +++
 linux-user/syscall_defs.h  | 3 +++
 linux-user/syscall_types.h | 5 +++++
 3 files changed, 11 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index c6b9d6a..622874b 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -114,6 +114,9 @@
 
      IOCTL(FDMSGON, 0, TYPE_NULL)
      IOCTL(FDMSGOFF, 0, TYPE_NULL)
+     IOCTL(FDFMTBEG, 0, TYPE_NULL)
+     IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
+     IOCTL(FDFMTEND, 0, TYPE_NULL)
      IOCTL(FDFLUSH, 0, TYPE_NULL)
      IOCTL(FDRESET, 0, TYPE_NULL)
      IOCTL(FDRAWCMD, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index fa69c6a..834a085 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -892,6 +892,9 @@ struct target_pollfd {
 
 #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
 #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
+#define TARGET_FDFMTBEG       TARGET_IO(2, 0x47)
+#define TARGET_FDFMTTRK      TARGET_IOW(2, 0x48, struct target_format_descr)
+#define TARGET_FDFMTEND       TARGET_IO(2, 0x49)
 #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
 #define TARGET_FDRESET        TARGET_IO(2, 0x54)
 #define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 4e36983..d82d1a5 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -261,6 +261,11 @@ STRUCT(blkpg_ioctl_arg,
        TYPE_INT, /* datalen */
        TYPE_PTRVOID) /* data */
 
+STRUCT(format_descr,
+       TYPE_INT,     /* device */
+       TYPE_INT,     /* head */
+       TYPE_INT)     /* track */
+
 #if defined(CONFIG_USBFS)
 /* usb device ioctls */
 STRUCT(usbdevfs_ctrltransfer,
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
                   ` (6 preceding siblings ...)
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
@ 2019-09-04 12:59 ` Aleksandar Markovic
  2019-09-06 10:47   ` Laurent Vivier
  7 siblings, 1 reply; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 12:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, laurent, amarkovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
for controlling error reporting of a floppy drive.

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
 linux-user/ioctls.h        |  2 ++
 linux-user/syscall_defs.h  | 19 +++++++++++++++++++
 linux-user/syscall_types.h |  7 +++++++
 3 files changed, 28 insertions(+)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 622874b..0c75d03 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -118,6 +118,8 @@
      IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
      IOCTL(FDFMTEND, 0, TYPE_NULL)
      IOCTL(FDFLUSH, 0, TYPE_NULL)
+     IOCTL(FDSETMAXERRS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
+     IOCTL(FDGETMAXERRS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
      IOCTL(FDRESET, 0, TYPE_NULL)
      IOCTL(FDRAWCMD, 0, TYPE_NULL)
      IOCTL(FDTWADDLE, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 834a085..7c5b614 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -890,12 +890,31 @@ struct target_pollfd {
 
 /* From <linux/fd.h> */
 
+struct target_floppy_max_errors {
+    abi_uint        abort;
+    abi_uint        read_track;
+    abi_uint        reset;
+    abi_uint        recal;
+    abi_uint        reporting;
+};
+
+struct target_format_descr {
+    abi_uint        device;
+    abi_uint        head;
+    abi_uint        track;
+};
+
 #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
 #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
 #define TARGET_FDFMTBEG       TARGET_IO(2, 0x47)
 #define TARGET_FDFMTTRK      TARGET_IOW(2, 0x48, struct target_format_descr)
 #define TARGET_FDFMTEND       TARGET_IO(2, 0x49)
+#define TARGET_FDSETEMSGTRESH TARGET_IO(2, 0x4a)
 #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
+#define TARGET_FDSETMAXERRS  TARGET_IOW(2, 0x4c,                               \
+                                        struct target_floppy_max_errors)
+#define TARGET_FDGETMAXERRS  TARGET_IOR(2, 0x0e,                               \
+                                        struct target_floppy_max_errors)
 #define TARGET_FDRESET        TARGET_IO(2, 0x54)
 #define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
 #define TARGET_FDTWADDLE      TARGET_IO(2, 0x59)
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index d82d1a5..5ba7c34 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -261,6 +261,13 @@ STRUCT(blkpg_ioctl_arg,
        TYPE_INT, /* datalen */
        TYPE_PTRVOID) /* data */
 
+STRUCT(floppy_max_errors,
+       TYPE_INT,     /* abort */
+       TYPE_INT,     /* read_track */
+       TYPE_INT,     /* reset */
+       TYPE_INT,     /* recal */
+       TYPE_INT)     /* reporting */
+
 STRUCT(format_descr,
        TYPE_INT,     /* device */
        TYPE_INT,     /* head */
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
@ 2019-09-04 13:16   ` Aleksandar Markovic
  2019-09-06  9:59   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-04 13:16 UTC (permalink / raw)
  To: Aleksandar Markovic
  Cc: Riku Voipio, QEMU Developers, Aleksandar Markovic, Laurent Vivier

On Wed, Sep 4, 2019 at 3:11 PM Aleksandar Markovic <
aleksandar.markovic@rt-rk.com> wrote:

> From: Aleksandar Rikalo <arikalo@wavecomp.com>
>
> Add support for semtimedop() emulation. It is based on invocation
> of safe_semtimedop().
>
> Conversion is left out of safe_semtimedop(), since other safe_xxx()
> usually don't contain similar conversions.
>
> Signed-off-by: Aleksandar Rikalo <arikalo@wavecomp.com>
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>

Hi, Laurent.

Please note that Aleksandar R. proposed also a code segment mentioned
in this message:

https://lists.gnu.org/archive/html/qemu-devel/2019-07/msg07080.html

... but wasn't sure if he got all bits and peaces right. Please provide your
judgement - and I will modify the patch accordingly.

Thanks,
aleksandar


>  linux-user/syscall.c | 40 ++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
>
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 8367cb1..b5bc6e4 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -6649,7 +6649,43 @@ static inline abi_long host_to_target_statx(struct
> target_statx *host_stx,
>      return 0;
>  }
>  #endif
> +#ifdef TARGET_NR_semtimedop
> +static inline abi_long do_semtimedop(int semid, abi_long ptr, unsigned
> nsops,
> +                                     abi_long timeout)
> +{
> +    struct sembuf *sops;
> +    struct timespec ts, *pts;
> +    abi_long ret;
> +
> +    if (timeout) {
> +        pts = &ts;
> +        if (target_to_host_timespec(pts, timeout)) {
> +            return -TARGET_EFAULT;
> +        }
> +    } else {
> +        pts = NULL;
> +    }
>
> +    sops = g_malloc(sizeof(struct sembuf) * nsops);
> +    if (sops == NULL) {
> +        return -TARGET_EFAULT;
> +    }
> +
> +    if (target_to_host_sembuf(sops, ptr, nsops)) {
> +        g_free(sops);
> +        return -TARGET_EFAULT;
> +    }
> +
> +#ifdef __NR_semtimedop
> +    ret = get_errno(safe_semtimedop(semid, sops, nsops, pts));
> +#else
> +    ret = -TARGET_ENOSYS;
> +#endif
> +    g_free(sops);
> +
> +    return ret;
> +}
> +#endif
>
>  /* ??? Using host futex calls even when target atomic operations
>     are not really atomic probably breaks things.  However implementing
> @@ -9193,6 +9229,10 @@ static abi_long do_syscall1(void *cpu_env, int num,
> abi_long arg1,
>      case TARGET_NR_semop:
>          return do_semop(arg1, arg2, arg3);
>  #endif
> +#ifdef TARGET_NR_semtimedop
> +    case TARGET_NR_semtimedop:
> +        return do_semtimedop(arg1, arg2, arg3, arg4);
> +#endif
>  #ifdef TARGET_NR_semctl
>      case TARGET_NR_semctl:
>          return do_semctl(arg1, arg2, arg3, arg4);
> --
> 2.7.4
>
>
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
  2019-09-04 13:16   ` Aleksandar Markovic
@ 2019-09-06  9:59   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06  9:59 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Rikalo <arikalo@wavecomp.com>
> 
> Add support for semtimedop() emulation. It is based on invocation
> of safe_semtimedop().
> 
> Conversion is left out of safe_semtimedop(), since other safe_xxx()
> usually don't contain similar conversions.
> 
> Signed-off-by: Aleksandar Rikalo <arikalo@wavecomp.com>
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/syscall.c | 40 ++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
> 
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 8367cb1..b5bc6e4 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -6649,7 +6649,43 @@ static inline abi_long host_to_target_statx(struct target_statx *host_stx,
>      return 0;
>  }
>  #endif
> +#ifdef TARGET_NR_semtimedop
> +static inline abi_long do_semtimedop(int semid, abi_long ptr, unsigned nsops,
> +                                     abi_long timeout)
> +{
> +    struct sembuf *sops;
> +    struct timespec ts, *pts;
> +    abi_long ret;
> +
> +    if (timeout) {
> +        pts = &ts;
> +        if (target_to_host_timespec(pts, timeout)) {
> +            return -TARGET_EFAULT;
> +        }
> +    } else {
> +        pts = NULL;
> +    }
>  
> +    sops = g_malloc(sizeof(struct sembuf) * nsops);
> +    if (sops == NULL) {
> +        return -TARGET_EFAULT;
> +    }
> +
> +    if (target_to_host_sembuf(sops, ptr, nsops)) {
> +        g_free(sops);
> +        return -TARGET_EFAULT;
> +    }
> +
> +#ifdef __NR_semtimedop
> +    ret = get_errno(safe_semtimedop(semid, sops, nsops, pts));
> +#else
> +    ret = -TARGET_ENOSYS;
> +#endif

You can do like in do_semop():

    ret = -TARGET_ENOSYS;
#ifdef __NR_semtimedop
    ret = get_errno(safe_semtimedop(semid, sops, nsops, pts));
#endif
#ifdef __NR_ipc
    if (ret == -TARGET_ENOSYS) {
        ret = get_errno(safe_ipc(IPCOP_semtimedop, semid, nsops, 0, sops, pts));
    }
#endif

> +    g_free(sops);
> +
> +    return ret;
> +}
> +#endif

The you can remove do_semop() and replace it:

    case IPCOP_semop:
        ret = do_semtimedop(first, ptr, second, NULL);
        break;

and

#ifdef TARGET_NR_semop
    case TARGET_NR_semop:
        return do_semtimedop(arg1, arg2, arg3, NULL);
#endif

you can also add in do_ipc():

    case IPCOP_semtimedop
        ret = do_semtimedop( ... );
        break;

>  
>  /* ??? Using host futex calls even when target atomic operations
>     are not really atomic probably breaks things.  However implementing
> @@ -9193,6 +9229,10 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
>      case TARGET_NR_semop:
>          return do_semop(arg1, arg2, arg3);
>  #endif
> +#ifdef TARGET_NR_semtimedop
> +    case TARGET_NR_semtimedop:
> +        return do_semtimedop(arg1, arg2, arg3, arg4);
> +#endif
>  #ifdef TARGET_NR_semctl
>      case TARGET_NR_semctl:
>          return do_semctl(arg1, arg2, arg3, arg4);
> 

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls Aleksandar Markovic
@ 2019-09-06 10:18   ` Laurent Vivier
  2019-09-10  8:34   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:18 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FIOGETOWN and FIOSETOWN ioctls have platform-specific definitions,
> hence non-standard definition in QEMU too.
> 
> Other than that, they both have a single integer argument, and their
> functionality is emulated in a straightforward way.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h       | 2 ++
>  linux-user/syscall_defs.h | 4 ++++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index cd9b6f9..1830de9 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -177,6 +177,8 @@
>  #endif
>  #endif /* CONFIG_USBFS */
>  
> +  IOCTL(FIOGETOWN, IOC_R, MK_PTR(TYPE_INT))
> +  IOCTL(FIOSETOWN, IOC_W, MK_PTR(TYPE_INT))
>    IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT))
>    IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq)))
>    IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 19a1d39..498223b 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -758,10 +758,14 @@ struct target_pollfd {
>  
>  #if defined(TARGET_ALPHA) || defined(TARGET_MIPS) || defined(TARGET_SH4) ||    \
>         defined(TARGET_XTENSA)
> +#define TARGET_FIOGETOWN       TARGET_IOR('f', 123, int)
> +#define TARGET_FIOSETOWN       TARGET_IOW('f', 124, int)
>  #define TARGET_SIOCATMARK      TARGET_IOR('s', 7, int)
>  #define TARGET_SIOCSPGRP       TARGET_IOW('s', 8, pid_t)
>  #define TARGET_SIOCGPGRP       TARGET_IOR('s', 9, pid_t)
>  #else
> +#define TARGET_FIOGETOWN       0x8903
> +#define TARGET_FIOSETOWN       0x8901
>  #define TARGET_SIOCATMARK      0x8905
>  #define TARGET_SIOCSPGRP       0x8902
>  #define TARGET_SIOCGPGRP       0x8904
> 

Reviewed-by: Laurent Vivier <laurent@vivier.eu>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
@ 2019-09-06 10:20   ` Laurent Vivier
  2019-09-10  8:41   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:20 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDMSGON and FDMSGOFF switch informational messages of floppy drives
> on and off.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Reviewed-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/ioctls.h       | 2 ++
>  linux-user/syscall_defs.h | 2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index bc19448..b253469 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -112,6 +112,8 @@
>       IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
>  #endif
>  
> +     IOCTL(FDMSGON, 0, TYPE_NULL)
> +     IOCTL(FDMSGOFF, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
>  
>  #ifdef FIBMAP
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 917202a..4e33ef3 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -890,6 +890,8 @@ struct target_pollfd {
>  
>  /* From <linux/fd.h> */
>  
> +#define TARGET_FDMSGON        TARGET_IO(2, 0x45)
> +#define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
>  #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
>  
>  #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
> 

Reviewed-by: Laurent Vivier <laurent@vivier.eu>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
@ 2019-09-06 10:21   ` Laurent Vivier
  2019-09-10  8:42   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:21 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls are misc commands
> for controlling a floppy drive.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h       | 4 ++++
>  linux-user/syscall_defs.h | 4 ++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index b253469..c6b9d6a 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -115,6 +115,10 @@
>       IOCTL(FDMSGON, 0, TYPE_NULL)
>       IOCTL(FDMSGOFF, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
> +     IOCTL(FDRESET, 0, TYPE_NULL)
> +     IOCTL(FDRAWCMD, 0, TYPE_NULL)
> +     IOCTL(FDTWADDLE, 0, TYPE_NULL)
> +     IOCTL(FDEJECT, 0, TYPE_NULL)
>  
>  #ifdef FIBMAP
>       IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 4e33ef3..fa69c6a 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -893,6 +893,10 @@ struct target_pollfd {
>  #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
>  #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
>  #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
> +#define TARGET_FDRESET        TARGET_IO(2, 0x54)
> +#define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
> +#define TARGET_FDTWADDLE      TARGET_IO(2, 0x59)
> +#define TARGET_FDEJECT        TARGET_IO(2, 0x5a)
>  
>  #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
>  #define TARGET_FIGETBSZ   TARGET_IO(0x00,2)  /* get the block size used for bmap */
> 

Reviewed-by: Laurent Vivier <laurent@vivier.eu>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
@ 2019-09-06 10:30   ` Laurent Vivier
  2019-09-06 10:38   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:30 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls provide means for controlling
> formatting of a floppy drive.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h        | 3 +++
>  linux-user/syscall_defs.h  | 3 +++
>  linux-user/syscall_types.h | 5 +++++
>  3 files changed, 11 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index c6b9d6a..622874b 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -114,6 +114,9 @@
>  
>       IOCTL(FDMSGON, 0, TYPE_NULL)
>       IOCTL(FDMSGOFF, 0, TYPE_NULL)
> +     IOCTL(FDFMTBEG, 0, TYPE_NULL)
> +     IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
> +     IOCTL(FDFMTEND, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
>       IOCTL(FDRESET, 0, TYPE_NULL)
>       IOCTL(FDRAWCMD, 0, TYPE_NULL)
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index fa69c6a..834a085 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -892,6 +892,9 @@ struct target_pollfd {
>  
>  #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
>  #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
> +#define TARGET_FDFMTBEG       TARGET_IO(2, 0x47)
> +#define TARGET_FDFMTTRK      TARGET_IOW(2, 0x48, struct target_format_descr)
> +#define TARGET_FDFMTEND       TARGET_IO(2, 0x49)
>  #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
>  #define TARGET_FDRESET        TARGET_IO(2, 0x54)
>  #define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
> diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
> index 4e36983..d82d1a5 100644
> --- a/linux-user/syscall_types.h
> +++ b/linux-user/syscall_types.h
> @@ -261,6 +261,11 @@ STRUCT(blkpg_ioctl_arg,
>         TYPE_INT, /* datalen */
>         TYPE_PTRVOID) /* data */
>  
> +STRUCT(format_descr,
> +       TYPE_INT,     /* device */
> +       TYPE_INT,     /* head */
> +       TYPE_INT)     /* track */
> +
>  #if defined(CONFIG_USBFS)
>  /* usb device ioctls */
>  STRUCT(usbdevfs_ctrltransfer,
> 

Reviewed-by: Laurent Vivier <laurent@vivier.eu>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
  2019-09-06 10:30   ` Laurent Vivier
@ 2019-09-06 10:38   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:38 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls provide means for controlling
> formatting of a floppy drive.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h        | 3 +++
>  linux-user/syscall_defs.h  | 3 +++
>  linux-user/syscall_types.h | 5 +++++
>  3 files changed, 11 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index c6b9d6a..622874b 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -114,6 +114,9 @@
>  
>       IOCTL(FDMSGON, 0, TYPE_NULL)
>       IOCTL(FDMSGOFF, 0, TYPE_NULL)
> +     IOCTL(FDFMTBEG, 0, TYPE_NULL)
> +     IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
> +     IOCTL(FDFMTEND, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
>       IOCTL(FDRESET, 0, TYPE_NULL)
>       IOCTL(FDRAWCMD, 0, TYPE_NULL)
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index fa69c6a..834a085 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -892,6 +892,9 @@ struct target_pollfd {
>  
>  #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
>  #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
> +#define TARGET_FDFMTBEG       TARGET_IO(2, 0x47)
> +#define TARGET_FDFMTTRK      TARGET_IOW(2, 0x48, struct target_format_descr)

target_format_descr is defined in the following patch. You don't need
it. Use format_descr from <linux/fd.h>

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
@ 2019-09-06 10:47   ` Laurent Vivier
  2019-09-10 18:59     ` Aleksandar Markovic
  0 siblings, 1 reply; 27+ messages in thread
From: Laurent Vivier @ 2019-09-06 10:47 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
> for controlling error reporting of a floppy drive.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h        |  2 ++
>  linux-user/syscall_defs.h  | 19 +++++++++++++++++++
>  linux-user/syscall_types.h |  7 +++++++
>  3 files changed, 28 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index 622874b..0c75d03 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -118,6 +118,8 @@
>       IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
>       IOCTL(FDFMTEND, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
> +     IOCTL(FDSETMAXERRS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
> +     IOCTL(FDGETMAXERRS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))

where is FDSETEMSGTRESH?

>       IOCTL(FDRESET, 0, TYPE_NULL)
>       IOCTL(FDRAWCMD, 0, TYPE_NULL)
>       IOCTL(FDTWADDLE, 0, TYPE_NULL)
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 834a085..7c5b614 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -890,12 +890,31 @@ struct target_pollfd {
>  
>  /* From <linux/fd.h> */
>  
> +struct target_floppy_max_errors {
> +    abi_uint        abort;
> +    abi_uint        read_track;
> +    abi_uint        reset;
> +    abi_uint        recal;
> +    abi_uint        reporting;
> +};

You don't need this, you can use floppy_max_errors from <linux/fd.h>.

But you can define it if you want because it is used to know the size of
the target structure (and if alignment or data types differ it can
mismatch. With "int" it's not the case).

> +struct target_format_descr {
> +    abi_uint        device;
> +    abi_uint        head;
> +    abi_uint        track;
> +};
> +

This one is for the previous patch. Same comment as above.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
@ 2019-09-10  8:33   ` Laurent Vivier
  0 siblings, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10  8:33 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> RNDRESEEDCRNG is a newer ioctl (added in kernel 4.17), and an
> "ifdef" guard is used for that reason in this patch.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Reviewed-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/ioctls.h       | 3 +++
>  linux-user/syscall_defs.h | 1 +
>  2 files changed, 4 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index 3281c97..cd9b6f9 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -246,6 +246,9 @@
>    IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT))
>    IOCTL(RNDZAPENTCNT, 0, TYPE_NULL)
>    IOCTL(RNDCLEARPOOL, 0, TYPE_NULL)
> +#ifdef RNDRESEEDCRNG
> +  IOCTL(RNDRESEEDCRNG, 0, TYPE_NULL)
> +#endif
>  
>    IOCTL(CDROMPAUSE, 0, TYPE_NULL)
>    IOCTL(CDROMSTART, 0, TYPE_NULL)
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 0662270..19a1d39 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -850,6 +850,7 @@ struct target_pollfd {
>  #define TARGET_RNDADDTOENTCNT  TARGET_IOW('R', 0x01, int)
>  #define TARGET_RNDZAPENTCNT    TARGET_IO('R', 0x04)
>  #define TARGET_RNDCLEARPOOL    TARGET_IO('R', 0x06)
> +#define TARGET_RNDRESEEDCRNG   TARGET_IO('R', 0x07)
>  
>  /* From <linux/fs.h> */
>  
> 

Applied to my linux-user branch.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls Aleksandar Markovic
  2019-09-06 10:18   ` Laurent Vivier
@ 2019-09-10  8:34   ` Laurent Vivier
  2019-09-10 10:00     ` Aleksandar Markovic
  1 sibling, 1 reply; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10  8:34 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FIOGETOWN and FIOSETOWN ioctls have platform-specific definitions,
> hence non-standard definition in QEMU too.
> 
> Other than that, they both have a single integer argument, and their
> functionality is emulated in a straightforward way.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h       | 2 ++
>  linux-user/syscall_defs.h | 4 ++++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index cd9b6f9..1830de9 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -177,6 +177,8 @@
>  #endif
>  #endif /* CONFIG_USBFS */
>  
> +  IOCTL(FIOGETOWN, IOC_R, MK_PTR(TYPE_INT))
> +  IOCTL(FIOSETOWN, IOC_W, MK_PTR(TYPE_INT))
>    IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT))
>    IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq)))
>    IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 19a1d39..498223b 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -758,10 +758,14 @@ struct target_pollfd {
>  
>  #if defined(TARGET_ALPHA) || defined(TARGET_MIPS) || defined(TARGET_SH4) ||    \
>         defined(TARGET_XTENSA)
> +#define TARGET_FIOGETOWN       TARGET_IOR('f', 123, int)
> +#define TARGET_FIOSETOWN       TARGET_IOW('f', 124, int)
>  #define TARGET_SIOCATMARK      TARGET_IOR('s', 7, int)
>  #define TARGET_SIOCSPGRP       TARGET_IOW('s', 8, pid_t)
>  #define TARGET_SIOCGPGRP       TARGET_IOR('s', 9, pid_t)
>  #else
> +#define TARGET_FIOGETOWN       0x8903
> +#define TARGET_FIOSETOWN       0x8901
>  #define TARGET_SIOCATMARK      0x8905
>  #define TARGET_SIOCSPGRP       0x8902
>  #define TARGET_SIOCGPGRP       0x8904
> 

Applied to my linux-user branch.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
@ 2019-09-10  8:39   ` Laurent Vivier
  0 siblings, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10  8:39 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Yunqiang Su <ysu@wavecomp.com>
> 
> FDFLUSH is used for flushing buffers of floppy drives. Support in
> QEMU is needed because some of Debian packages use this ioctl while
> running post-build tests. One such example is 'tar' package.
> 
> Signed-off-by: Yunqiang Su <ysu@wavecomp.com>
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Reviewed-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/ioctls.h       | 2 ++
>  linux-user/syscall.c      | 1 +
>  linux-user/syscall_defs.h | 4 ++++
>  3 files changed, 7 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index 1830de9..bc19448 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -112,6 +112,8 @@
>       IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
>  #endif
>  
> +     IOCTL(FDFLUSH, 0, TYPE_NULL)
> +
>  #ifdef FIBMAP
>       IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
>  #endif
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index b5bc6e4..6825458 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -87,6 +87,7 @@
>  #include <linux/kd.h>
>  #include <linux/mtio.h>
>  #include <linux/fs.h>
> +#include <linux/fd.h>
>  #if defined(CONFIG_FIEMAP)
>  #include <linux/fiemap.h>
>  #endif
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 498223b..917202a 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -888,6 +888,10 @@ struct target_pollfd {
>  #define TARGET_BLKROTATIONAL TARGET_IO(0x12, 126)
>  #define TARGET_BLKZEROOUT TARGET_IO(0x12, 127)
>  
> +/* From <linux/fd.h> */
> +
> +#define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
> +
>  #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
>  #define TARGET_FIGETBSZ   TARGET_IO(0x00,2)  /* get the block size used for bmap */
>  
> 

Applied to my linux-user branch.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
  2019-09-06 10:20   ` Laurent Vivier
@ 2019-09-10  8:41   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10  8:41 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDMSGON and FDMSGOFF switch informational messages of floppy drives
> on and off.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Reviewed-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/ioctls.h       | 2 ++
>  linux-user/syscall_defs.h | 2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index bc19448..b253469 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -112,6 +112,8 @@
>       IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
>  #endif
>  
> +     IOCTL(FDMSGON, 0, TYPE_NULL)
> +     IOCTL(FDMSGOFF, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
>  
>  #ifdef FIBMAP
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 917202a..4e33ef3 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -890,6 +890,8 @@ struct target_pollfd {
>  
>  /* From <linux/fd.h> */
>  
> +#define TARGET_FDMSGON        TARGET_IO(2, 0x45)
> +#define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
>  #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
>  
>  #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
> 

Applied to my linux-user branch.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls
  2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
  2019-09-06 10:21   ` Laurent Vivier
@ 2019-09-10  8:42   ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10  8:42 UTC (permalink / raw)
  To: Aleksandar Markovic, qemu-devel; +Cc: riku.voipio, amarkovic

Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls are misc commands
> for controlling a floppy drive.
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> ---
>  linux-user/ioctls.h       | 4 ++++
>  linux-user/syscall_defs.h | 4 ++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index b253469..c6b9d6a 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -115,6 +115,10 @@
>       IOCTL(FDMSGON, 0, TYPE_NULL)
>       IOCTL(FDMSGOFF, 0, TYPE_NULL)
>       IOCTL(FDFLUSH, 0, TYPE_NULL)
> +     IOCTL(FDRESET, 0, TYPE_NULL)
> +     IOCTL(FDRAWCMD, 0, TYPE_NULL)
> +     IOCTL(FDTWADDLE, 0, TYPE_NULL)
> +     IOCTL(FDEJECT, 0, TYPE_NULL)
>  
>  #ifdef FIBMAP
>       IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 4e33ef3..fa69c6a 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -893,6 +893,10 @@ struct target_pollfd {
>  #define TARGET_FDMSGON        TARGET_IO(2, 0x45)
>  #define TARGET_FDMSGOFF       TARGET_IO(2, 0x46)
>  #define TARGET_FDFLUSH        TARGET_IO(2, 0x4b)
> +#define TARGET_FDRESET        TARGET_IO(2, 0x54)
> +#define TARGET_FDRAWCMD       TARGET_IO(2, 0x58)
> +#define TARGET_FDTWADDLE      TARGET_IO(2, 0x59)
> +#define TARGET_FDEJECT        TARGET_IO(2, 0x5a)
>  
>  #define TARGET_FIBMAP     TARGET_IO(0x00,1)  /* bmap access */
>  #define TARGET_FIGETBSZ   TARGET_IO(0x00,2)  /* get the block size used for bmap */
> 

Applied to my linux-user branch.

Thanks,
Laurent


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls
  2019-09-10  8:34   ` Laurent Vivier
@ 2019-09-10 10:00     ` Aleksandar Markovic
  0 siblings, 0 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-10 10:00 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: Aleksandar Markovic, riku.voipio, qemu-devel, amarkovic

10.09.2019. 10.35, "Laurent Vivier" <laurent@vivier.eu> је написао/ла:
>
> Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> > From: Aleksandar Markovic <amarkovic@wavecomp.com>
> >
> > FIOGETOWN and FIOSETOWN ioctls have platform-specific definitions,
> > hence non-standard definition in QEMU too.
> >
> > Other than that, they both have a single integer argument, and their
> > functionality is emulated in a straightforward way.
> >
> > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> > ---
> >  linux-user/ioctls.h       | 2 ++
> >  linux-user/syscall_defs.h | 4 ++++
> >  2 files changed, 6 insertions(+)
> >
> > diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> > index cd9b6f9..1830de9 100644
> > --- a/linux-user/ioctls.h
> > +++ b/linux-user/ioctls.h
> > @@ -177,6 +177,8 @@
> >  #endif
> >  #endif /* CONFIG_USBFS */
> >
> > +  IOCTL(FIOGETOWN, IOC_R, MK_PTR(TYPE_INT))
> > +  IOCTL(FIOSETOWN, IOC_W, MK_PTR(TYPE_INT))
> >    IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT))
> >    IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq)))
> >    IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R,
MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
> > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> > index 19a1d39..498223b 100644
> > --- a/linux-user/syscall_defs.h
> > +++ b/linux-user/syscall_defs.h
> > @@ -758,10 +758,14 @@ struct target_pollfd {
> >
> >  #if defined(TARGET_ALPHA) || defined(TARGET_MIPS) ||
defined(TARGET_SH4) ||    \
> >         defined(TARGET_XTENSA)
> > +#define TARGET_FIOGETOWN       TARGET_IOR('f', 123, int)
> > +#define TARGET_FIOSETOWN       TARGET_IOW('f', 124, int)
> >  #define TARGET_SIOCATMARK      TARGET_IOR('s', 7, int)
> >  #define TARGET_SIOCSPGRP       TARGET_IOW('s', 8, pid_t)
> >  #define TARGET_SIOCGPGRP       TARGET_IOR('s', 9, pid_t)
> >  #else
> > +#define TARGET_FIOGETOWN       0x8903
> > +#define TARGET_FIOSETOWN       0x8901
> >  #define TARGET_SIOCATMARK      0x8905
> >  #define TARGET_SIOCSPGRP       0x8902
> >  #define TARGET_SIOCGPGRP       0x8904
> >
>
> Applied to my linux-user branch.
>

Thank you!

This (and other instances of your applying individual patches to your
branch) will clean up my pending linux user series significantly, and make
further work clearer and easier.

Aleksandar

> Thanks,
> Laurent
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-06 10:47   ` Laurent Vivier
@ 2019-09-10 18:59     ` Aleksandar Markovic
  2019-09-10 19:15       ` Aleksandar Markovic
  2019-09-10 19:15       ` Laurent Vivier
  0 siblings, 2 replies; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-10 18:59 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: Aleksandar Markovic, riku.voipio, qemu-devel, amarkovic

06.09.2019. 12.47, "Laurent Vivier" <laurent@vivier.eu> је написао/ла:
>
> Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> > From: Aleksandar Markovic <amarkovic@wavecomp.com>
> >
> > FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
> > for controlling error reporting of a floppy drive.
> >
> > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> > ---
> >  linux-user/ioctls.h        |  2 ++
> >  linux-user/syscall_defs.h  | 19 +++++++++++++++++++
> >  linux-user/syscall_types.h |  7 +++++++
> >  3 files changed, 28 insertions(+)
> >
> > diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> > index 622874b..0c75d03 100644
> > --- a/linux-user/ioctls.h
> > +++ b/linux-user/ioctls.h
> > @@ -118,6 +118,8 @@
> >       IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
> >       IOCTL(FDFMTEND, 0, TYPE_NULL)
> >       IOCTL(FDFLUSH, 0, TYPE_NULL)
> > +     IOCTL(FDSETMAXERRS, IOC_W,
MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
> > +     IOCTL(FDGETMAXERRS, IOC_R,
MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
>
> where is FDSETEMSGTRESH?
>
> >       IOCTL(FDRESET, 0, TYPE_NULL)
> >       IOCTL(FDRAWCMD, 0, TYPE_NULL)
> >       IOCTL(FDTWADDLE, 0, TYPE_NULL)
> > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> > index 834a085..7c5b614 100644
> > --- a/linux-user/syscall_defs.h
> > +++ b/linux-user/syscall_defs.h
> > @@ -890,12 +890,31 @@ struct target_pollfd {
> >
> >  /* From <linux/fd.h> */
> >
> > +struct target_floppy_max_errors {
> > +    abi_uint        abort;
> > +    abi_uint        read_track;
> > +    abi_uint        reset;
> > +    abi_uint        recal;
> > +    abi_uint        reporting;
> > +};
>
> You don't need this, you can use floppy_max_errors from <linux/fd.h>.
>
> But you can define it if you want because it is used to know the size of
> the target structure (and if alignment or data types differ it can
> mismatch. With "int" it's not the case).
>

Laurent, thanks for the review, I'll correct this in the next version.

Just a follow-up question:

If the structure of related to a (not-yet-supported in QEMU) ioctl was:

struct hd_geometry {
      unsigned char heads;
      unsigned char sectors;
      unsigned short cylinders;
      unsigned long start;
};

... would "target_hd_geometry" be needed, or not?

Regards,

Aleksandar

> > +struct target_format_descr {
> > +    abi_uint        device;
> > +    abi_uint        head;
> > +    abi_uint        track;
> > +};
> > +
>
> This one is for the previous patch. Same comment as above.
>
> Thanks,
> Laurent
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-10 18:59     ` Aleksandar Markovic
@ 2019-09-10 19:15       ` Aleksandar Markovic
  2019-09-10 19:24         ` Laurent Vivier
  2019-09-10 19:15       ` Laurent Vivier
  1 sibling, 1 reply; 27+ messages in thread
From: Aleksandar Markovic @ 2019-09-10 19:15 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: Aleksandar Markovic, riku.voipio, qemu-devel, amarkovic

10.09.2019. 20.58, aleksandar.m.mail@gmail.com је написао/ла:
>
>
> 06.09.2019. 12.47, "Laurent Vivier" <laurent@vivier.eu> је написао/ла:
> >
> > Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
> > > From: Aleksandar Markovic <amarkovic@wavecomp.com>
> > >
> > > FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
> > > for controlling error reporting of a floppy drive.
> > >
> > > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> > > ---
> > >  linux-user/ioctls.h        |  2 ++
> > >  linux-user/syscall_defs.h  | 19 +++++++++++++++++++
> > >  linux-user/syscall_types.h |  7 +++++++
> > >  3 files changed, 28 insertions(+)
> > >
> > > diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> > > index 622874b..0c75d03 100644
> > > --- a/linux-user/ioctls.h
> > > +++ b/linux-user/ioctls.h
> > > @@ -118,6 +118,8 @@
> > >       IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
> > >       IOCTL(FDFMTEND, 0, TYPE_NULL)
> > >       IOCTL(FDFLUSH, 0, TYPE_NULL)
> > > +     IOCTL(FDSETMAXERRS, IOC_W,
MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
> > > +     IOCTL(FDGETMAXERRS, IOC_R,
MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
> >
> > where is FDSETEMSGTRESH?
> >
> > >       IOCTL(FDRESET, 0, TYPE_NULL)
> > >       IOCTL(FDRAWCMD, 0, TYPE_NULL)
> > >       IOCTL(FDTWADDLE, 0, TYPE_NULL)
> > > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> > > index 834a085..7c5b614 100644
> > > --- a/linux-user/syscall_defs.h
> > > +++ b/linux-user/syscall_defs.h
> > > @@ -890,12 +890,31 @@ struct target_pollfd {
> > >
> > >  /* From <linux/fd.h> */
> > >
> > > +struct target_floppy_max_errors {
> > > +    abi_uint        abort;
> > > +    abi_uint        read_track;
> > > +    abi_uint        reset;
> > > +    abi_uint        recal;
> > > +    abi_uint        reporting;
> > > +};
> >
> > You don't need this, you can use floppy_max_errors from <linux/fd.h>.
> >
> > But you can define it if you want because it is used to know the size of
> > the target structure (and if alignment or data types differ it can
> > mismatch. With "int" it's not the case).
> >
>
> Laurent, thanks for the review, I'll correct this in the next version.
>
> Just a follow-up question:
>
> If the structure of related to a (not-yet-supported in QEMU) ioctl was:
>
> struct hd_geometry {
>       unsigned char heads;
>       unsigned char sectors;
>       unsigned short cylinders;
>       unsigned long start;
> };
>
> ... would "target_hd_geometry" be needed, or not?
>

Actually, that ioctl is already implemented in QEMU (HDIO_GETGEO), without
defining target_hd_geometry. Is this fine?

> Regards,
>
> Aleksandar
>
> > > +struct target_format_descr {
> > > +    abi_uint        device;
> > > +    abi_uint        head;
> > > +    abi_uint        track;
> > > +};
> > > +
> >
> > This one is for the previous patch. Same comment as above.
> >
> > Thanks,
> > Laurent
> >

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-10 18:59     ` Aleksandar Markovic
  2019-09-10 19:15       ` Aleksandar Markovic
@ 2019-09-10 19:15       ` Laurent Vivier
  1 sibling, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10 19:15 UTC (permalink / raw)
  To: Aleksandar Markovic
  Cc: Aleksandar Markovic, riku.voipio, qemu-devel, amarkovic

Le 10/09/2019 à 20:59, Aleksandar Markovic a écrit :
> 
> 06.09.2019. 12.47, "Laurent Vivier" <laurent@vivier.eu
> <mailto:laurent@vivier.eu>> је написао/ла:
>>
>> Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
>> > From: Aleksandar Markovic <amarkovic@wavecomp.com
> <mailto:amarkovic@wavecomp.com>>
>> >
>> > FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
>> > for controlling error reporting of a floppy drive.
>> >
>> > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com
> <mailto:amarkovic@wavecomp.com>>
>> > ---
>> >  linux-user/ioctls.h        |  2 ++
>> >  linux-user/syscall_defs.h  | 19 +++++++++++++++++++
>> >  linux-user/syscall_types.h |  7 +++++++
>> >  3 files changed, 28 insertions(+)
>> >
>> > diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
>> > index 622874b..0c75d03 100644
>> > --- a/linux-user/ioctls.h
>> > +++ b/linux-user/ioctls.h
>> > @@ -118,6 +118,8 @@
>> >       IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
>> >       IOCTL(FDFMTEND, 0, TYPE_NULL)
>> >       IOCTL(FDFLUSH, 0, TYPE_NULL)
>> > +     IOCTL(FDSETMAXERRS, IOC_W,
> MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
>> > +     IOCTL(FDGETMAXERRS, IOC_R,
> MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
>>
>> where is FDSETEMSGTRESH?
>>
>> >       IOCTL(FDRESET, 0, TYPE_NULL)
>> >       IOCTL(FDRAWCMD, 0, TYPE_NULL)
>> >       IOCTL(FDTWADDLE, 0, TYPE_NULL)
>> > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
>> > index 834a085..7c5b614 100644
>> > --- a/linux-user/syscall_defs.h
>> > +++ b/linux-user/syscall_defs.h
>> > @@ -890,12 +890,31 @@ struct target_pollfd {
>> > 
>> >  /* From <linux/fd.h> */
>> > 
>> > +struct target_floppy_max_errors {
>> > +    abi_uint        abort;
>> > +    abi_uint        read_track;
>> > +    abi_uint        reset;
>> > +    abi_uint        recal;
>> > +    abi_uint        reporting;
>> > +};
>>
>> You don't need this, you can use floppy_max_errors from <linux/fd.h>.
>>
>> But you can define it if you want because it is used to know the size of
>> the target structure (and if alignment or data types differ it can
>> mismatch. With "int" it's not the case).
>>
> 
> Laurent, thanks for the review, I'll correct this in the next version.
> 
> Just a follow-up question:
> 
> If the structure of related to a (not-yet-supported in QEMU) ioctl was:
> 
> struct hd_geometry {
>       unsigned char heads;
>       unsigned char sectors;
>       unsigned short cylinders;
>       unsigned long start;
> };
> 
> ... would "target_hd_geometry" be needed, or not?

In this case I think it is needed:
"unsigned long start" can be needed to be aligned on 64bit on some 64bit
architectures whereas on other it can be needed to be aligned on 32bit
or 16bit (m68k). So host and guest can behave differently.

Thanks,
Laurent



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
  2019-09-10 19:15       ` Aleksandar Markovic
@ 2019-09-10 19:24         ` Laurent Vivier
  0 siblings, 0 replies; 27+ messages in thread
From: Laurent Vivier @ 2019-09-10 19:24 UTC (permalink / raw)
  To: Aleksandar Markovic
  Cc: Aleksandar Markovic, riku.voipio, qemu-devel, amarkovic

Le 10/09/2019 à 21:15, Aleksandar Markovic a écrit :
> 
> 10.09.2019. 20.58, aleksandar.m.mail@gmail.com
> <mailto:aleksandar.m.mail@gmail.com> је написао/ла:
>>
>>
>> 06.09.2019. 12.47, "Laurent Vivier" <laurent@vivier.eu
> <mailto:laurent@vivier.eu>> је написао/ла:
>> >
>> > Le 04/09/2019 à 14:59, Aleksandar Markovic a écrit :
>> > > From: Aleksandar Markovic <amarkovic@wavecomp.com
> <mailto:amarkovic@wavecomp.com>>
>> > >
>> > > FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
>> > > for controlling error reporting of a floppy drive.
>> > >
>> > > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com
> <mailto:amarkovic@wavecomp.com>>
>> > > ---
>> > >  linux-user/ioctls.h        |  2 ++
>> > >  linux-user/syscall_defs.h  | 19 +++++++++++++++++++
>> > >  linux-user/syscall_types.h |  7 +++++++
>> > >  3 files changed, 28 insertions(+)
>> > >
>> > > diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
>> > > index 622874b..0c75d03 100644
>> > > --- a/linux-user/ioctls.h
>> > > +++ b/linux-user/ioctls.h
>> > > @@ -118,6 +118,8 @@
>> > >       IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
>> > >       IOCTL(FDFMTEND, 0, TYPE_NULL)
>> > >       IOCTL(FDFLUSH, 0, TYPE_NULL)
>> > > +     IOCTL(FDSETMAXERRS, IOC_W,
> MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
>> > > +     IOCTL(FDGETMAXERRS, IOC_R,
> MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
>> >
>> > where is FDSETEMSGTRESH?
>> >
>> > >       IOCTL(FDRESET, 0, TYPE_NULL)
>> > >       IOCTL(FDRAWCMD, 0, TYPE_NULL)
>> > >       IOCTL(FDTWADDLE, 0, TYPE_NULL)
>> > > diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
>> > > index 834a085..7c5b614 100644
>> > > --- a/linux-user/syscall_defs.h
>> > > +++ b/linux-user/syscall_defs.h
>> > > @@ -890,12 +890,31 @@ struct target_pollfd {
>> > > 
>> > >  /* From <linux/fd.h> */
>> > > 
>> > > +struct target_floppy_max_errors {
>> > > +    abi_uint        abort;
>> > > +    abi_uint        read_track;
>> > > +    abi_uint        reset;
>> > > +    abi_uint        recal;
>> > > +    abi_uint        reporting;
>> > > +};
>> >
>> > You don't need this, you can use floppy_max_errors from <linux/fd.h>.
>> >
>> > But you can define it if you want because it is used to know the size of
>> > the target structure (and if alignment or data types differ it can
>> > mismatch. With "int" it's not the case).
>> >
>>
>> Laurent, thanks for the review, I'll correct this in the next version.
>>
>> Just a follow-up question:
>>
>> If the structure of related to a (not-yet-supported in QEMU) ioctl was:
>>
>> struct hd_geometry {
>>       unsigned char heads;
>>       unsigned char sectors;
>>       unsigned short cylinders;
>>       unsigned long start;
>> };
>>
>> ... would "target_hd_geometry" be needed, or not?
>>
> 
> Actually, that ioctl is already implemented in QEMU (HDIO_GETGEO),
> without defining target_hd_geometry. Is this fine?

No, for instance you can check it:

#include <stdio.h>
#include <stddef.h>
#include <linux/hdreg.h>

int main(void)
{
    printf("heads %zd\n", offsetof(struct hd_geometry, heads));
    printf("sectors %zd\n", offsetof(struct hd_geometry, sectors));
    printf("cylinders %zd\n", offsetof(struct hd_geometry, cylinders));
    printf("start %zd\n", offsetof(struct hd_geometry, start));
}

$ cc -o test_align test_align.c

on i386:

$ ./test_align
heads 0
sectors 1
cylinders 2
start 4

on x86_64:

$ ./test_align
heads 0
sectors 1
cylinders 2
start 8

Thanks,
Laurent



^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2019-09-10 19:25 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-04 12:59 [Qemu-devel] [PATCH v6 0/8] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 1/8] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
2019-09-04 13:16   ` Aleksandar Markovic
2019-09-06  9:59   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 2/8] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
2019-09-10  8:33   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 3/8] linux-user: Add support for FIOGETOWN and FIOSETOWN ioctls Aleksandar Markovic
2019-09-06 10:18   ` Laurent Vivier
2019-09-10  8:34   ` Laurent Vivier
2019-09-10 10:00     ` Aleksandar Markovic
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 4/8] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
2019-09-10  8:39   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 5/8] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
2019-09-06 10:20   ` Laurent Vivier
2019-09-10  8:41   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 6/8] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
2019-09-06 10:21   ` Laurent Vivier
2019-09-10  8:42   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 7/8] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
2019-09-06 10:30   ` Laurent Vivier
2019-09-06 10:38   ` Laurent Vivier
2019-09-04 12:59 ` [Qemu-devel] [PATCH v6 8/8] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
2019-09-06 10:47   ` Laurent Vivier
2019-09-10 18:59     ` Aleksandar Markovic
2019-09-10 19:15       ` Aleksandar Markovic
2019-09-10 19:24         ` Laurent Vivier
2019-09-10 19:15       ` Laurent Vivier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.