* [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2
@ 2019-08-01 12:21 Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 01/15] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
` (14 more replies)
0 siblings, 15 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
A set of misc linux user patches for 4.2.
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 (13):
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
linux-user: Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls
linux-user: Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls
linux-user: Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC
ioctls
linux-user: Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS
ioctls
linux-user: Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE
ioctls
linux-user: Add support for KDGKBMETA and KDSKBMETA ioctls
linux-user: Fix support for KDGKBLED and KDSKBLED ioctls
linux-user: Fix support for KDGETLED and KDSETLED ioctls
linux-user: Add support for RNDRESEEDCRNG ioctl
Aleksandar Rikalo (1):
linux-user: Add support for semtimedop() syscall
Yunqiang Su (1):
linux user: Add support for FDFLUSH ioctl
linux-user/ioctls.h | 36 ++++++++++++++++++++++++++++++++----
linux-user/syscall.c | 41 +++++++++++++++++++++++++++++++++++++++++
linux-user/syscall_defs.h | 45 +++++++++++++++++++++++++++++++++++++++++++++
linux-user/syscall_types.h | 12 ++++++++++++
4 files changed, 130 insertions(+), 4 deletions(-)
--
2.7.4
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 01/15] linux user: Add support for FDFLUSH ioctl
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 02/15] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
` (13 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: Yunqiang Su, 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 3281c97..fb7b014 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 8367cb1..ee80175 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 0662270..fb30bce 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -883,6 +883,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 02/15] linux-user: Add support for FDMSGON and FDMSGOFF ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 01/15] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 03/15] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
` (12 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: 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 fb7b014..9978163 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 fb30bce..cd97e9b 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -885,6 +885,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 03/15] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 01/15] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 02/15] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 04/15] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
` (11 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: 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 9978163..ab4ef2e 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 cd97e9b..4185391 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -888,6 +888,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 04/15] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (2 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 03/15] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 05/15] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
` (10 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: 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 ab4ef2e..e393ad6 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 4185391..1ca115d 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -887,6 +887,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 05/15] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (3 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 04/15] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 06/15] linux-user: Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls Aleksandar Markovic
` (9 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: 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 e393ad6..6551938 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 1ca115d..36256b0 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -885,12 +885,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 06/15] linux-user: Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (4 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 05/15] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 07/15] linux-user: Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls Aleksandar Markovic
` (8 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 6551938..895ba35 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -434,6 +434,7 @@
IOCTL(HDIO_GET_NOWERR, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_DMA, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_32BIT, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(HDIO_GET_NICE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT)
IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT)
@@ -442,6 +443,7 @@
IOCTL(HDIO_SET_DMA, 0, TYPE_INT)
IOCTL(HDIO_SET_32BIT, 0, TYPE_INT)
IOCTL(HDIO_SET_PIO_MODE, 0, TYPE_INT)
+ IOCTL(HDIO_SET_NICE, 0, TYPE_INT)
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 36256b0..4e219a1 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1064,6 +1064,7 @@ struct target_format_descr {
#define TARGET_HDIO_GET_32BIT 0x0309 /* get current io_32bit setting */
#define TARGET_HDIO_GET_NOWERR 0x030a /* get ignore-write-error flag */
#define TARGET_HDIO_GET_DMA 0x030b /* get use-dma flag */
+#define TARGET_HDIO_GET_NICE 0x030c /* get nice flags */
#define TARGET_HDIO_GET_IDENTITY 0x030d /* get IDE identification info */
#define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
@@ -1075,6 +1076,7 @@ struct target_format_descr {
#define TARGET_HDIO_SET_NOWERR 0x0325 /* change ignore-write-error flag */
#define TARGET_HDIO_SET_DMA 0x0326 /* change use-dma flag */
#define TARGET_HDIO_SET_PIO_MODE 0x0327 /* reconfig interface to new speed */
+#define TARGET_HDIO_SET_NICE 0x0329 /* set nice flags */
/* loop ioctls */
#define TARGET_LOOP_SET_FD 0x4C00
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 07/15] linux-user: Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (5 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 06/15] linux-user: Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 08/15] linux-user: Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC ioctls Aleksandar Markovic
` (7 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 895ba35..b54a184 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -435,6 +435,7 @@
IOCTL(HDIO_GET_DMA, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_32BIT, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_NICE, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(HDIO_GET_WCACHE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT)
IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT)
@@ -444,6 +445,7 @@
IOCTL(HDIO_SET_32BIT, 0, TYPE_INT)
IOCTL(HDIO_SET_PIO_MODE, 0, TYPE_INT)
IOCTL(HDIO_SET_NICE, 0, TYPE_INT)
+ IOCTL(HDIO_SET_WCACHE, 0, TYPE_INT)
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 4e219a1..fb42d32 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1066,6 +1066,7 @@ struct target_format_descr {
#define TARGET_HDIO_GET_DMA 0x030b /* get use-dma flag */
#define TARGET_HDIO_GET_NICE 0x030c /* get nice flags */
#define TARGET_HDIO_GET_IDENTITY 0x030d /* get IDE identification info */
+#define TARGET_HDIO_GET_WCACHE 0x030e /* get write cache mode on|off */
#define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
/* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */
@@ -1077,6 +1078,7 @@ struct target_format_descr {
#define TARGET_HDIO_SET_DMA 0x0326 /* change use-dma flag */
#define TARGET_HDIO_SET_PIO_MODE 0x0327 /* reconfig interface to new speed */
#define TARGET_HDIO_SET_NICE 0x0329 /* set nice flags */
+#define TARGET_HDIO_SET_WCACHE 0x032b /* change write cache mode */
/* loop ioctls */
#define TARGET_LOOP_SET_FD 0x4C00
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 08/15] linux-user: Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (6 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 07/15] linux-user: Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 09/15] linux-user: Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS ioctls Aleksandar Markovic
` (6 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 b54a184..c9b82eb 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -436,6 +436,7 @@
IOCTL(HDIO_GET_32BIT, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_NICE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_WCACHE, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(HDIO_GET_ACOUSTIC, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT)
IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT)
@@ -446,6 +447,7 @@
IOCTL(HDIO_SET_PIO_MODE, 0, TYPE_INT)
IOCTL(HDIO_SET_NICE, 0, TYPE_INT)
IOCTL(HDIO_SET_WCACHE, 0, TYPE_INT)
+ IOCTL(HDIO_SET_ACOUSTIC, 0, TYPE_INT)
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index fb42d32..b9d1242 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1067,6 +1067,7 @@ struct target_format_descr {
#define TARGET_HDIO_GET_NICE 0x030c /* get nice flags */
#define TARGET_HDIO_GET_IDENTITY 0x030d /* get IDE identification info */
#define TARGET_HDIO_GET_WCACHE 0x030e /* get write cache mode on|off */
+#define TARGET_HDIO_GET_ACOUSTIC 0x030f /* get acoustic value */
#define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
/* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */
@@ -1079,6 +1080,7 @@ struct target_format_descr {
#define TARGET_HDIO_SET_PIO_MODE 0x0327 /* reconfig interface to new speed */
#define TARGET_HDIO_SET_NICE 0x0329 /* set nice flags */
#define TARGET_HDIO_SET_WCACHE 0x032b /* change write cache mode */
+#define TARGET_HDIO_SET_ACOUSTIC 0x032c /* change acoustic behavior */
/* loop ioctls */
#define TARGET_LOOP_SET_FD 0x4C00
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 09/15] linux-user: Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (7 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 08/15] linux-user: Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 10/15] linux-user: Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE ioctls Aleksandar Markovic
` (5 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 c9b82eb..b9c6a5a 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -437,6 +437,7 @@
IOCTL(HDIO_GET_NICE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_WCACHE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_ACOUSTIC, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(HDIO_GET_ADDRESS, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT)
IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT)
@@ -448,6 +449,7 @@
IOCTL(HDIO_SET_NICE, 0, TYPE_INT)
IOCTL(HDIO_SET_WCACHE, 0, TYPE_INT)
IOCTL(HDIO_SET_ACOUSTIC, 0, TYPE_INT)
+ IOCTL(HDIO_SET_ADDRESS, 0, TYPE_INT)
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index b9d1242..aa9c6af 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1068,6 +1068,7 @@ struct target_format_descr {
#define TARGET_HDIO_GET_IDENTITY 0x030d /* get IDE identification info */
#define TARGET_HDIO_GET_WCACHE 0x030e /* get write cache mode on|off */
#define TARGET_HDIO_GET_ACOUSTIC 0x030f /* get acoustic value */
+#define TARGET_HDIO_GET_ADDRESS 0x0310 /* get lba addressing modes */
#define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
/* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */
@@ -1081,6 +1082,7 @@ struct target_format_descr {
#define TARGET_HDIO_SET_NICE 0x0329 /* set nice flags */
#define TARGET_HDIO_SET_WCACHE 0x032b /* change write cache mode */
#define TARGET_HDIO_SET_ACOUSTIC 0x032c /* change acoustic behavior */
+#define TARGET_HDIO_SET_ADDRESS 0x032f /* change lba addressing modes */
/* loop ioctls */
#define TARGET_LOOP_SET_FD 0x4C00
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 10/15] linux-user: Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (8 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 09/15] linux-user: Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 11/15] linux-user: Add support for KDGKBMETA and KDSKBMETA ioctls Aleksandar Markovic
` (4 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 b9c6a5a..3796ee6 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -438,6 +438,7 @@
IOCTL(HDIO_GET_WCACHE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_ACOUSTIC, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_GET_ADDRESS, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(HDIO_GET_BUSSTATE, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_DRIVE_CMD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(HDIO_SET_UNMASKINTR, 0, TYPE_INT)
IOCTL(HDIO_SET_MULTCOUNT, 0, TYPE_INT)
@@ -449,6 +450,7 @@
IOCTL(HDIO_SET_NICE, 0, TYPE_INT)
IOCTL(HDIO_SET_WCACHE, 0, TYPE_INT)
IOCTL(HDIO_SET_ACOUSTIC, 0, TYPE_INT)
+ IOCTL(HDIO_SET_BUSSTATE, 0, TYPE_INT)
IOCTL(HDIO_SET_ADDRESS, 0, TYPE_INT)
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index aa9c6af..766d7b9 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1069,6 +1069,7 @@ struct target_format_descr {
#define TARGET_HDIO_GET_WCACHE 0x030e /* get write cache mode on|off */
#define TARGET_HDIO_GET_ACOUSTIC 0x030f /* get acoustic value */
#define TARGET_HDIO_GET_ADDRESS 0x0310 /* get lba addressing modes */
+#define TARGET_HDIO_GET_BUSSTATE 0x031a /* get hwif bus state */
#define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
/* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */
@@ -1082,6 +1083,7 @@ struct target_format_descr {
#define TARGET_HDIO_SET_NICE 0x0329 /* set nice flags */
#define TARGET_HDIO_SET_WCACHE 0x032b /* change write cache mode */
#define TARGET_HDIO_SET_ACOUSTIC 0x032c /* change acoustic behavior */
+#define TARGET_HDIO_SET_BUSSTATE 0x032d /* set hwif bus state */
#define TARGET_HDIO_SET_ADDRESS 0x032f /* change lba addressing modes */
/* loop ioctls */
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 11/15] linux-user: Add support for KDGKBMETA and KDSKBMETA ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (9 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 10/15] linux-user: Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 12/15] linux-user: Fix support for KDGKBLED and KDSKBLED ioctls Aleksandar Markovic
` (3 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Add support for KDGKBMETA and KDSKBMETA ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
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 3796ee6..2100cf4 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -63,6 +63,8 @@
IOCTL(KDSKBMODE, 0, TYPE_INT)
IOCTL(KDGKBENT, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_kbentry)))
IOCTL(KDGKBSENT, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_kbsentry)))
+ IOCTL(KDGKBMETA, IOC_R, MK_PTR(TYPE_INT))
+ IOCTL(KDSKBMETA, IOC_W, TYPE_INT)
IOCTL(KDGKBLED, 0, TYPE_INT)
IOCTL(KDSKBLED, 0, TYPE_INT)
IOCTL(KDGETLED, 0, TYPE_INT)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 766d7b9..50fc44f 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -750,6 +750,8 @@ struct target_pollfd {
#define TARGET_KDSKBMODE 0x4b45
#define TARGET_KDGKBENT 0x4B46 /* gets one entry in translation table */
#define TARGET_KDGKBSENT 0x4B48 /* gets one function key string entry */
+#define TARGET_KDGKBMETA 0x4B62 /* gets meta key handling mode */
+#define TARGET_KDSKBMETA 0x4B63 /* sets meta key handling mode */
#define TARGET_KDGKBLED 0x4B64 /* get led flags (not lights) */
#define TARGET_KDSKBLED 0x4B65 /* set led flags (not lights) */
#define TARGET_KDGETLED 0x4B31 /* return current led state */
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 12/15] linux-user: Fix support for KDGKBLED and KDSKBLED ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (10 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 11/15] linux-user: Add support for KDGKBMETA and KDSKBMETA ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 13/15] linux-user: Fix support for KDGETLED and KDSETLED ioctls Aleksandar Markovic
` (2 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Fix support for KDGKBLED and KDSKBLED ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
linux-user/ioctls.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 2100cf4..ea92eea 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -65,8 +65,8 @@
IOCTL(KDGKBSENT, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_kbsentry)))
IOCTL(KDGKBMETA, IOC_R, MK_PTR(TYPE_INT))
IOCTL(KDSKBMETA, IOC_W, TYPE_INT)
- IOCTL(KDGKBLED, 0, TYPE_INT)
- IOCTL(KDSKBLED, 0, TYPE_INT)
+ IOCTL(KDGKBLED, IOC_R, MK_PTR(TYPE_CHAR))
+ IOCTL(KDSKBLED, IOC_W, TYPE_INT)
IOCTL(KDGETLED, 0, TYPE_INT)
IOCTL(KDSETLED, 0, TYPE_INT)
IOCTL_SPECIAL(KDSIGACCEPT, 0, do_ioctl_kdsigaccept, TYPE_INT)
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 13/15] linux-user: Fix support for KDGETLED and KDSETLED ioctls
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (11 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 12/15] linux-user: Fix support for KDGKBLED and KDSKBLED ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 14/15] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 15/15] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
Fix support for KDGETLED and KDSETLED ioctls.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
linux-user/ioctls.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index ea92eea..7a4e85b 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -67,8 +67,8 @@
IOCTL(KDSKBMETA, IOC_W, TYPE_INT)
IOCTL(KDGKBLED, IOC_R, MK_PTR(TYPE_CHAR))
IOCTL(KDSKBLED, IOC_W, TYPE_INT)
- IOCTL(KDGETLED, 0, TYPE_INT)
- IOCTL(KDSETLED, 0, TYPE_INT)
+ IOCTL(KDGETLED, IOC_R, MK_PTR(TYPE_CHAR))
+ IOCTL(KDSETLED, IOC_W, TYPE_INT)
IOCTL_SPECIAL(KDSIGACCEPT, 0, do_ioctl_kdsigaccept, TYPE_INT)
IOCTL(BLKROSET, IOC_W, MK_PTR(TYPE_INT))
--
2.7.4
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 14/15] linux-user: Add support for RNDRESEEDCRNG ioctl
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (12 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 13/15] linux-user: Fix support for KDGETLED and KDSETLED ioctls Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 15/15] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: 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 7a4e85b..240cb50 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -261,6 +261,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 50fc44f..1b42578 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -852,6 +852,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] 16+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v5 15/15] linux-user: Add support for semtimedop() syscall
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (13 preceding siblings ...)
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 14/15] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
@ 2019-08-01 12:21 ` Aleksandar Markovic
14 siblings, 0 replies; 16+ messages in thread
From: Aleksandar Markovic @ 2019-08-01 12:21 UTC (permalink / raw)
To: qemu-devel; +Cc: Aleksandar Rikalo, 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 ee80175..6825458 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6650,7 +6650,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
@@ -9194,6 +9230,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] 16+ messages in thread
end of thread, other threads:[~2019-08-01 12:32 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-01 12:21 [Qemu-devel] [PATCH for 4.2 v5 00/15] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 01/15] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 02/15] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 03/15] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 04/15] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 05/15] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 06/15] linux-user: Add support for HDIO_GET_NICE and HDIO_SET_NICE ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 07/15] linux-user: Add support for HDIO_GET_WCACHE and HDIO_SET_WCACHE ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 08/15] linux-user: Add support for HDIO_GET_ACOUSTIC and HDIO_SET_ACOUSTIC ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 09/15] linux-user: Add support for HDIO_GET_ADDRESS and HDIO_SET_ADDRESS ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 10/15] linux-user: Add support for HDIO_GET_BUSSTATE and HDIO_SET_BUSSTATE ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 11/15] linux-user: Add support for KDGKBMETA and KDSKBMETA ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 12/15] linux-user: Fix support for KDGKBLED and KDSKBLED ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 13/15] linux-user: Fix support for KDGETLED and KDSETLED ioctls Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 14/15] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
2019-08-01 12:21 ` [Qemu-devel] [PATCH for 4.2 v5 15/15] linux-user: Add support for semtimedop() syscall Aleksandar Markovic
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.