From patchwork Sat Jan 11 15:40:23 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328873 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3D315109A for ; Sat, 11 Jan 2020 15:45:25 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0D69D206ED for ; Sat, 11 Jan 2020 15:45:24 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0D69D206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58464 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIx1-0007Hu-7U for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:45:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50682) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIu3-0002Wr-64 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqItw-0002RP-H9 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:17 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:45103 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqItv-0008KF-73 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:12 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 37A031A1FBF; Sat, 11 Jan 2020 16:41:07 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 1469B1A1187; Sat, 11 Jan 2020 16:41:07 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 01/19] linux-user: Fix some constants in termbits.h Date: Sat, 11 Jan 2020 16:40:23 +0100 Message-Id: <1578757241-29583-2-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Some constants were defined in terms of host, instead of target, as they should be. Some additional trivial changes in this patch were forced by checkpatch.pl. Reviewed-by: Max Filippov Signed-off-by: Aleksandar Markovic --- linux-user/aarch64/termbits.h | 4 +- linux-user/alpha/termbits.h | 10 +-- linux-user/arm/termbits.h | 4 +- linux-user/cris/termbits.h | 4 +- linux-user/hppa/termbits.h | 4 +- linux-user/i386/termbits.h | 4 +- linux-user/m68k/termbits.h | 4 +- linux-user/microblaze/termbits.h | 4 +- linux-user/mips/termbits.h | 4 +- linux-user/nios2/termbits.h | 4 +- linux-user/openrisc/termbits.h | 6 +- linux-user/ppc/termbits.h | 4 +- linux-user/riscv/termbits.h | 4 +- linux-user/s390x/termbits.h | 26 ++++--- linux-user/sh4/termbits.h | 4 +- linux-user/sparc/termbits.h | 4 +- linux-user/sparc64/termbits.h | 4 +- linux-user/x86_64/termbits.h | 6 +- linux-user/xtensa/termbits.h | 156 ++++++++++++++++++++++----------------- 19 files changed, 141 insertions(+), 119 deletions(-) diff --git a/linux-user/aarch64/termbits.h b/linux-user/aarch64/termbits.h index 0ab448d..998fc1d 100644 --- a/linux-user/aarch64/termbits.h +++ b/linux-user/aarch64/termbits.h @@ -83,8 +83,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/alpha/termbits.h b/linux-user/alpha/termbits.h index a714251..ace19be 100644 --- a/linux-user/alpha/termbits.h +++ b/linux-user/alpha/termbits.h @@ -108,8 +108,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CBAUDEX 0000000 #define TARGET_B57600 00020 #define TARGET_B115200 00021 @@ -165,7 +165,7 @@ struct target_termios { #define TARGET_FIOASYNC TARGET_IOW('f', 125, int) #define TARGET_FIONBIO TARGET_IOW('f', 126, int) #define TARGET_FIONREAD TARGET_IOR('f', 127, int) -#define TARGET_TIOCINQ FIONREAD +#define TARGET_TIOCINQ TARGET_FIONREAD #define TARGET_FIOQSIZE TARGET_IOR('f', 128, loff_t) #define TARGET_TIOCGETP TARGET_IOR('t', 8, struct target_sgttyb) @@ -217,8 +217,8 @@ struct target_termios { # define TARGET_TIOCM_CAR 0x040 # define TARGET_TIOCM_RNG 0x080 # define TARGET_TIOCM_DSR 0x100 -# define TARGET_TIOCM_CD TIOCM_CAR -# define TARGET_TIOCM_RI TIOCM_RNG +# define TARGET_TIOCM_CD TARGET_TIOCM_CAR +# define TARGET_TIOCM_RI TARGET_TIOCM_RNG # define TARGET_TIOCM_OUT1 0x2000 # define TARGET_TIOCM_OUT2 0x4000 # define TARGET_TIOCM_LOOP 0x8000 diff --git a/linux-user/arm/termbits.h b/linux-user/arm/termbits.h index e555cff..7170b8a 100644 --- a/linux-user/arm/termbits.h +++ b/linux-user/arm/termbits.h @@ -83,8 +83,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/cris/termbits.h b/linux-user/cris/termbits.h index 475ee70..76d5ed0 100644 --- a/linux-user/cris/termbits.h +++ b/linux-user/cris/termbits.h @@ -81,8 +81,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/hppa/termbits.h b/linux-user/hppa/termbits.h index 8fba839..3094710 100644 --- a/linux-user/hppa/termbits.h +++ b/linux-user/hppa/termbits.h @@ -82,8 +82,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/i386/termbits.h b/linux-user/i386/termbits.h index 88264bb..3b16977 100644 --- a/linux-user/i386/termbits.h +++ b/linux-user/i386/termbits.h @@ -82,8 +82,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/m68k/termbits.h b/linux-user/m68k/termbits.h index 23840aa..f3ae025 100644 --- a/linux-user/m68k/termbits.h +++ b/linux-user/m68k/termbits.h @@ -83,8 +83,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/microblaze/termbits.h b/linux-user/microblaze/termbits.h index 17db8a4..7697736 100644 --- a/linux-user/microblaze/termbits.h +++ b/linux-user/microblaze/termbits.h @@ -81,8 +81,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/mips/termbits.h b/linux-user/mips/termbits.h index 3287cf6..3419a49 100644 --- a/linux-user/mips/termbits.h +++ b/linux-user/mips/termbits.h @@ -82,8 +82,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/nios2/termbits.h b/linux-user/nios2/termbits.h index 425a2fe..269ab59 100644 --- a/linux-user/nios2/termbits.h +++ b/linux-user/nios2/termbits.h @@ -83,8 +83,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/openrisc/termbits.h b/linux-user/openrisc/termbits.h index 7a635ff..220742e 100644 --- a/linux-user/openrisc/termbits.h +++ b/linux-user/openrisc/termbits.h @@ -124,8 +124,8 @@ struct target_termios3 { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 @@ -222,7 +222,7 @@ struct target_termios3 { #define TARGET_TIOCGSOFTCAR 0x5419 #define TARGET_TIOCSSOFTCAR 0x541A #define TARGET_FIONREAD 0x541B -#define TARGET_TIOCINQ FIONREAD +#define TARGET_TIOCINQ TARGET_FIONREAD #define TARGET_TIOCLINUX 0x541C #define TARGET_TIOCCONS 0x541D #define TARGET_TIOCGSERIAL 0x541E diff --git a/linux-user/ppc/termbits.h b/linux-user/ppc/termbits.h index 19e4c6e..66bb76c 100644 --- a/linux-user/ppc/termbits.h +++ b/linux-user/ppc/termbits.h @@ -107,8 +107,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CBAUDEX 0000000 #define TARGET_B57600 00020 #define TARGET_B115200 00021 diff --git a/linux-user/riscv/termbits.h b/linux-user/riscv/termbits.h index 5e0af0d..778de0c 100644 --- a/linux-user/riscv/termbits.h +++ b/linux-user/riscv/termbits.h @@ -83,8 +83,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/s390x/termbits.h b/linux-user/s390x/termbits.h index 9affa8f..79a71c2 100644 --- a/linux-user/s390x/termbits.h +++ b/linux-user/s390x/termbits.h @@ -128,8 +128,8 @@ struct target_ktermios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 @@ -234,7 +234,7 @@ struct target_ktermios { #define TARGET_TIOCGSOFTCAR 0x5419 #define TARGET_TIOCSSOFTCAR 0x541A #define TARGET_FIONREAD 0x541B -#define TARGET_TIOCINQ FIONREAD +#define TARGET_TIOCINQ TARGET_FIONREAD #define TARGET_TIOCLINUX 0x541C #define TARGET_TIOCCONS 0x541D #define TARGET_TIOCGSERIAL 0x541E @@ -248,14 +248,18 @@ struct target_ktermios { #define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ #define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ #define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ -#define TARGET_TCGETS2 _IOR('T',0x2A, struct termios2) -#define TARGET_TCSETS2 _IOW('T',0x2B, struct termios2) -#define TARGET_TCSETSW2 _IOW('T',0x2C, struct termios2) -#define TARGET_TCSETSF2 _IOW('T',0x2D, struct termios2) -#define TARGET_TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ -#define TARGET_TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ -#define TARGET_TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no below /dev/console */ -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the slave */ +#define TARGET_TCGETS2 TARGET_IOR('T', 0x2A, struct termios2) +#define TARGET_TCSETS2 TARGET_IOW('T', 0x2B, struct termios2) +#define TARGET_TCSETSW2 TARGET_IOW('T', 0x2C, struct termios2) +#define TARGET_TCSETSF2 TARGET_IOW('T', 0x2D, struct termios2) +/* Get Pty Number (of pty-mux device) */ +#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) +/* Lock/unlock Pty */ +#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) +/* Get real dev no below /dev/console */ +#define TARGET_TIOCGDEV TARGET_IOR('T', 0x32, unsigned int) +/* Safely open the slave */ +#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) #define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ #define TARGET_FIOCLEX 0x5451 diff --git a/linux-user/sh4/termbits.h b/linux-user/sh4/termbits.h index dd125b6..89a124d 100644 --- a/linux-user/sh4/termbits.h +++ b/linux-user/sh4/termbits.h @@ -101,8 +101,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 diff --git a/linux-user/sparc/termbits.h b/linux-user/sparc/termbits.h index f85219e..e38e53e 100644 --- a/linux-user/sparc/termbits.h +++ b/linux-user/sparc/termbits.h @@ -109,8 +109,8 @@ struct target_termios { #define TARGET_B9600 0x0000000d #define TARGET_B19200 0x0000000e #define TARGET_B38400 0x0000000f -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0x00000030 #define TARGET_CS5 0x00000000 #define TARGET_CS6 0x00000010 diff --git a/linux-user/sparc64/termbits.h b/linux-user/sparc64/termbits.h index 11b5abc..c86f714 100644 --- a/linux-user/sparc64/termbits.h +++ b/linux-user/sparc64/termbits.h @@ -109,8 +109,8 @@ struct target_termios { #define TARGET_B9600 0x0000000d #define TARGET_B19200 0x0000000e #define TARGET_B38400 0x0000000f -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0x00000030 #define TARGET_CS5 0x00000000 #define TARGET_CS6 0x00000010 diff --git a/linux-user/x86_64/termbits.h b/linux-user/x86_64/termbits.h index c8bb599..efd35ae 100644 --- a/linux-user/x86_64/termbits.h +++ b/linux-user/x86_64/termbits.h @@ -102,8 +102,8 @@ struct target_termios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 @@ -198,7 +198,7 @@ struct target_termios { #define TARGET_TIOCGSOFTCAR 0x5419 #define TARGET_TIOCSSOFTCAR 0x541A #define TARGET_FIONREAD 0x541B -#define TARGET_TIOCINQ FIONREAD +#define TARGET_TIOCINQ TARGET_FIONREAD #define TARGET_TIOCLINUX 0x541C #define TARGET_TIOCCONS 0x541D #define TARGET_TIOCGSERIAL 0x541E diff --git a/linux-user/xtensa/termbits.h b/linux-user/xtensa/termbits.h index d1e09e6..d92fe9c 100644 --- a/linux-user/xtensa/termbits.h +++ b/linux-user/xtensa/termbits.h @@ -142,8 +142,8 @@ struct target_ktermios { #define TARGET_B9600 0000015 #define TARGET_B19200 0000016 #define TARGET_B38400 0000017 -#define TARGET_EXTA B19200 -#define TARGET_EXTB B38400 +#define TARGET_EXTA TARGET_B19200 +#define TARGET_EXTB TARGET_B38400 #define TARGET_CSIZE 0000060 #define TARGET_CS5 0000000 #define TARGET_CS6 0000020 @@ -217,13 +217,13 @@ struct target_ktermios { /* from arch/xtensa/include/uapi/asm/ioctls.h */ -#define TARGET_FIOCLEX _IO('f', 1) -#define TARGET_FIONCLEX _IO('f', 2) -#define TARGET_FIOASYNC _IOW('f', 125, int) -#define TARGET_FIONBIO _IOW('f', 126, int) -#define TARGET_FIONREAD _IOR('f', 127, int) -#define TARGET_TIOCINQ FIONREAD -#define TARGET_FIOQSIZE _IOR('f', 128, loff_t) +#define TARGET_FIOCLEX TARGET_IO('f', 1) +#define TARGET_FIONCLEX TARGET_IO('f', 2) +#define TARGET_FIOASYNC TARGET_IOW('f', 125, int) +#define TARGET_FIONBIO TARGET_IOW('f', 126, int) +#define TARGET_FIONREAD TARGET_IOR('f', 127, int) +#define TARGET_TIOCINQ TARGET_FIONREAD +#define TARGET_FIOQSIZE TARGET_IOR('f', 128, loff_t) #define TARGET_TCGETS 0x5401 #define TARGET_TCSETS 0x5402 @@ -235,28 +235,28 @@ struct target_ktermios { #define TARGET_TCSETAW 0x40127419 /* _IOW('t', 25, struct termio) */ #define TARGET_TCSETAF 0x4012741C /* _IOW('t', 28, struct termio) */ -#define TARGET_TCSBRK _IO('t', 29) -#define TARGET_TCXONC _IO('t', 30) -#define TARGET_TCFLSH _IO('t', 31) +#define TARGET_TCSBRK TARGET_IO('t', 29) +#define TARGET_TCXONC TARGET_IO('t', 30) +#define TARGET_TCFLSH TARGET_IO('t', 31) #define TARGET_TIOCSWINSZ 0x40087467 /* _IOW('t', 103, struct winsize) */ #define TARGET_TIOCGWINSZ 0x80087468 /* _IOR('t', 104, struct winsize) */ -#define TARGET_TIOCSTART _IO('t', 110) /* start output, like ^Q */ -#define TARGET_TIOCSTOP _IO('t', 111) /* stop output, like ^S */ -#define TARGET_TIOCOUTQ _IOR('t', 115, int) /* output queue size */ - -#define TARGET_TIOCSPGRP _IOW('t', 118, int) -#define TARGET_TIOCGPGRP _IOR('t', 119, int) - -#define TARGET_TIOCEXCL _IO('T', 12) -#define TARGET_TIOCNXCL _IO('T', 13) -#define TARGET_TIOCSCTTY _IO('T', 14) - -#define TARGET_TIOCSTI _IOW('T', 18, char) -#define TARGET_TIOCMGET _IOR('T', 21, unsigned int) -#define TARGET_TIOCMBIS _IOW('T', 22, unsigned int) -#define TARGET_TIOCMBIC _IOW('T', 23, unsigned int) -#define TARGET_TIOCMSET _IOW('T', 24, unsigned int) +#define TARGET_TIOCSTART TARGET_IO('t', 110) /* start output, like ^Q */ +#define TARGET_TIOCSTOP TARGET_IO('t', 111) /* stop output, like ^S */ +#define TARGET_TIOCOUTQ TARGET_IOR('t', 115, int) /* output queue size */ + +#define TARGET_TIOCSPGRP TARGET_IOW('t', 118, int) +#define TARGET_TIOCGPGRP TARGET_IOR('t', 119, int) + +#define TARGET_TIOCEXCL TARGET_IO('T', 12) +#define TARGET_TIOCNXCL TARGET_IO('T', 13) +#define TARGET_TIOCSCTTY TARGET_IO('T', 14) + +#define TARGET_TIOCSTI TARGET_IOW('T', 18, char) +#define TARGET_TIOCMGET TARGET_IOR('T', 21, unsigned int) +#define TARGET_TIOCMBIS TARGET_IOW('T', 22, unsigned int) +#define TARGET_TIOCMBIC TARGET_IOW('T', 23, unsigned int) +#define TARGET_TIOCMSET TARGET_IOW('T', 24, unsigned int) # define TARGET_TIOCM_LE 0x001 # define TARGET_TIOCM_DTR 0x002 # define TARGET_TIOCM_RTS 0x004 @@ -266,16 +266,16 @@ struct target_ktermios { # define TARGET_TIOCM_CAR 0x040 # define TARGET_TIOCM_RNG 0x080 # define TARGET_TIOCM_DSR 0x100 -# define TARGET_TIOCM_CD TIOCM_CAR -# define TARGET_TIOCM_RI TIOCM_RNG +# define TARGET_TIOCM_CD TARGET_TIOCM_CAR +# define TARGET_TIOCM_RI TARGET_TIOCM_RNG -#define TARGET_TIOCGSOFTCAR _IOR('T', 25, unsigned int) -#define TARGET_TIOCSSOFTCAR _IOW('T', 26, unsigned int) -#define TARGET_TIOCLINUX _IOW('T', 28, char) -#define TARGET_TIOCCONS _IO('T', 29) +#define TARGET_TIOCGSOFTCAR TARGET_IOR('T', 25, unsigned int) +#define TARGET_TIOCSSOFTCAR TARGET_IOW('T', 26, unsigned int) +#define TARGET_TIOCLINUX TARGET_IOW('T', 28, char) +#define TARGET_TIOCCONS TARGET_IO('T', 29) #define TARGET_TIOCGSERIAL 0x803C541E /*_IOR('T', 30, struct serial_struct)*/ #define TARGET_TIOCSSERIAL 0x403C541F /*_IOW('T', 31, struct serial_struct)*/ -#define TARGET_TIOCPKT _IOW('T', 32, int) +#define TARGET_TIOCPKT TARGET_IOW('T', 32, int) # define TARGET_TIOCPKT_DATA 0 # define TARGET_TIOCPKT_FLUSHREAD 1 # define TARGET_TIOCPKT_FLUSHWRITE 2 @@ -286,43 +286,61 @@ struct target_ktermios { # define TARGET_TIOCPKT_IOCTL 64 -#define TARGET_TIOCNOTTY _IO('T', 34) -#define TARGET_TIOCSETD _IOW('T', 35, int) -#define TARGET_TIOCGETD _IOR('T', 36, int) -#define TARGET_TCSBRKP _IOW('T', 37, int) /* Needed for POSIX tcsendbreak()*/ -#define TARGET_TIOCSBRK _IO('T', 39) /* BSD compatibility */ -#define TARGET_TIOCCBRK _IO('T', 40) /* BSD compatibility */ -#define TARGET_TIOCGSID _IOR('T', 41, pid_t) /* Return the session ID of FD*/ -#define TARGET_TCGETS2 _IOR('T', 42, struct termios2) -#define TARGET_TCSETS2 _IOW('T', 43, struct termios2) -#define TARGET_TCSETSW2 _IOW('T', 44, struct termios2) -#define TARGET_TCSETSF2 _IOW('T', 45, struct termios2) -#define TARGET_TIOCGRS485 _IOR('T', 46, struct serial_rs485) -#define TARGET_TIOCSRS485 _IOWR('T', 47, struct serial_rs485) -#define TARGET_TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ -#define TARGET_TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ -#define TARGET_TIOCGDEV _IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */ -#define TARGET_TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */ -#define TARGET_TIOCVHANGUP _IO('T', 0x37) -#define TARGET_TIOCGPKT _IOR('T', 0x38, int) /* Get packet mode state */ -#define TARGET_TIOCGPTLCK _IOR('T', 0x39, int) /* Get Pty lock state */ -#define TARGET_TIOCGEXCL _IOR('T', 0x40, int) /* Get exclusive mode state */ -#define TARGET_TIOCGPTPEER _IO('T', 0x41) /* Safely open the slave */ - -#define TARGET_TIOCSERCONFIG _IO('T', 83) -#define TARGET_TIOCSERGWILD _IOR('T', 84, int) -#define TARGET_TIOCSERSWILD _IOW('T', 85, int) +#define TARGET_TIOCNOTTY TARGET_IO('T', 34) +#define TARGET_TIOCSETD TARGET_IOW('T', 35, int) +#define TARGET_TIOCGETD TARGET_IOR('T', 36, int) +/* Needed for POSIX tcsendbreak()*/ +#define TARGET_TCSBRKP TARGET_IOW('T', 37, int) +/* BSD compatibility */ +#define TARGET_TIOCSBRK TARGET_IO('T', 39) +/* BSD compatibility */ +#define TARGET_TIOCCBRK TARGET_IO('T', 40) +/* Return the session ID of FD*/ +#define TARGET_TIOCGSID TARGET_IOR('T', 41, pid_t) +#define TARGET_TCGETS2 TARGET_IOR('T', 42, struct termios2) +#define TARGET_TCSETS2 TARGET_IOW('T', 43, struct termios2) +#define TARGET_TCSETSW2 TARGET_IOW('T', 44, struct termios2) +#define TARGET_TCSETSF2 TARGET_IOW('T', 45, struct termios2) +#define TARGET_TIOCGRS485 TARGET_IOR('T', 46, struct serial_rs485) +#define TARGET_TIOCSRS485 TARGET_IOWR('T', 47, struct serial_rs485) +/* Get Pty Number (of pty-mux device) */ +#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) +/* Lock/unlock Pty */ +#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) +/* Get primary device node of /dev/console */ +#define TARGET_TIOCGDEV TARGET_IOR('T', 0x32, unsigned int) +/* Generate signal on Pty slave */ +#define TARGET_TIOCSIG TARGET_IOW('T', 0x36, int) +#define TARGET_TIOCVHANGUP TARGET_IO('T', 0x37) +/* Get packet mode state */ +#define TARGET_TIOCGPKT TARGET_IOR('T', 0x38, int) +/* Get Pty lock state */ +#define TARGET_TIOCGPTLCK TARGET_IOR('T', 0x39, int) +/* Get exclusive mode state */ +#define TARGET_TIOCGEXCL TARGET_IOR('T', 0x40, int) +/* Safely open the slave */ +#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) + +#define TARGET_TIOCSERCONFIG TARGET_IO('T', 83) +#define TARGET_TIOCSERGWILD TARGET_IOR('T', 84, int) +#define TARGET_TIOCSERSWILD TARGET_IOW('T', 85, int) #define TARGET_TIOCGLCKTRMIOS 0x5456 #define TARGET_TIOCSLCKTRMIOS 0x5457 -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ -#define TARGET_TIOCSERGETLSR _IOR('T', 89, unsigned int) /* Get line status reg. */ +/* For debugging only */ +#define TARGET_TIOCSERGSTRUCT 0x5458 +/* Get line status reg. */ +#define TARGET_TIOCSERGETLSR TARGET_IOR('T', 89, unsigned int) /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ -# define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ -#define TARGET_TIOCSERGETMULTI 0x80a8545a /* Get multiport config */ +/* Transmitter physically empty */ +# define TARGET_TIOCSER_TEMT 0x01 +/* Get multiport config */ +#define TARGET_TIOCSERGETMULTI 0x80a8545a /* _IOR('T', 90, struct serial_multiport_struct) */ -#define TARGET_TIOCSERSETMULTI 0x40a8545b /* Set multiport config */ +/* Set multiport config */ +#define TARGET_TIOCSERSETMULTI 0x40a8545b /* _IOW('T', 91, struct serial_multiport_struct) */ - -#define TARGET_TIOCMIWAIT _IO('T', 92) /* wait for a change on serial input line(s) */ -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */ +/* wait for a change on serial input line(s) */ +#define TARGET_TIOCMIWAIT TARGET_IO('T', 92) +/* read serial port inline interrupt counts */ +#define TARGET_TIOCGICOUNT 0x545D #endif /* XTENSA_TERMBITS_H */ From patchwork Sat Jan 11 15:40:24 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328865 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 80ADC930 for ; Sat, 11 Jan 2020 15:43:32 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E43B7206ED for ; Sat, 11 Jan 2020 15:43:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E43B7206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58430 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIvC-0004VL-Py for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:43:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50683) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIu3-0002Ws-6H for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqItx-0002SJ-0B for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:17 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:46799 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqItw-0002O1-EU for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:12 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 7669C1A1EAC; Sat, 11 Jan 2020 16:42:08 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 5C68B1A1187; Sat, 11 Jan 2020 16:42:08 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 02/19] linux-user: m68k: Update syscall numbers to kernel 5.5 rc3 level Date: Sat, 11 Jan 2020 16:40:24 +0100 Message-Id: <1578757241-29583-3-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Update m68k syscall numbers based on Linux kernel tag v5.5-rc3 (commit 46cf053e). Signed-off-by: Aleksandar Markovic --- cc: Laurent Vivier --- linux-user/m68k/syscall_nr.h | 50 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/linux-user/m68k/syscall_nr.h b/linux-user/m68k/syscall_nr.h index d33d8e9..01aee34 100644 --- a/linux-user/m68k/syscall_nr.h +++ b/linux-user/m68k/syscall_nr.h @@ -382,5 +382,53 @@ #define TARGET_NR_copy_file_range 376 #define TARGET_NR_preadv2 377 #define TARGET_NR_pwritev2 378 - +#define TARGET_NR_statx 379 +#define TARGET_NR_seccomp 380 +#define TARGET_NR_pkey_mprotect 381 +#define TARGET_NR_pkey_alloc 382 +#define TARGET_NR_pkey_free 383 +#define TARGET_NR_rseq 384 +/* room for arch specific calls */ +#define TARGET_NR_semget 393 +#define TARGET_NR_semctl 394 +#define TARGET_NR_shmget 395 +#define TARGET_NR_shmctl 396 +#define TARGET_NR_shmat 397 +#define TARGET_NR_shmdt 398 +#define TARGET_NR_msgget 399 +#define TARGET_NR_msgsnd 400 +#define TARGET_NR_msgrcv 401 +#define TARGET_NR_msgctl 402 +#define TARGET_NR_clock_gettime64 403 +#define TARGET_NR_clock_settime64 404 +#define TARGET_NR_clock_adjtime64 405 +#define TARGET_NR_clock_getres_time64 406 +#define TARGET_NR_clock_nanosleep_time64 407 +#define TARGET_NR_timer_gettime64 408 +#define TARGET_NR_timer_settime64 409 +#define TARGET_NR_timerfd_gettime64 410 +#define TARGET_NR_timerfd_settime64 411 +#define TARGET_NR_utimensat_time64 412 +#define TARGET_NR_pselect6_time64 413 +#define TARGET_NR_ppoll_time64 414 +#define TARGET_NR_io_pgetevents_time64 416 +#define TARGET_NR_recvmmsg_time64 417 +#define TARGET_NR_mq_timedsend_time64 418 +#define TARGET_NR_mq_timedreceive_time64 419 +#define TARGET_NR_semtimedop_time64 420 +#define TARGET_NR_rt_sigtimedwait_time64 421 +#define TARGET_NR_futex_time64 422 +#define TARGET_NR_sched_rr_get_interval_time64 423 +#define TARGET_NR_pidfd_send_signal 424 +#define TARGET_NR_io_uring_setup 425 +#define TARGET_NR_io_uring_enter 426 +#define TARGET_NR_io_uring_register 427 +#define TARGET_NR_open_tree 428 +#define TARGET_NR_move_mount 429 +#define TARGET_NR_fsopen 430 +#define TARGET_NR_fsconfig 431 +#define TARGET_NR_fsmount 432 +#define TARGET_NR_fspick 433 +#define TARGET_NR_pidfd_open 434 +/* 435 reserved for clone3 */ #endif From patchwork Sat Jan 11 15:40:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328869 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 03ABC109A for ; Sat, 11 Jan 2020 15:43:37 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D8650206ED for ; Sat, 11 Jan 2020 15:43:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D8650206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58432 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIvG-0004bC-Rb for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:43:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50794) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIuB-0002j7-Cx for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIu9-0002cJ-A1 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:27 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:46821 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIu8-0002aS-Rx for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:25 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 4E0FB1A1EAC; Sat, 11 Jan 2020 16:42:20 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 355821A1187; Sat, 11 Jan 2020 16:42:20 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 03/19] linux-user: microblaze: Update syscall numbers to kernel 5.5 rc3 level Date: Sat, 11 Jan 2020 16:40:25 +0100 Message-Id: <1578757241-29583-4-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Edgar E . Iglesias" , laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Update microblaze syscall numbers based on Linux kernel tag v5.5-rc3 (commit 46cf053e). Signed-off-by: Aleksandar Markovic --- cc: Edgar E. Iglesias --- linux-user/microblaze/syscall_nr.h | 45 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/linux-user/microblaze/syscall_nr.h b/linux-user/microblaze/syscall_nr.h index aa2eb93..ec1758e 100644 --- a/linux-user/microblaze/syscall_nr.h +++ b/linux-user/microblaze/syscall_nr.h @@ -393,5 +393,50 @@ #define TARGET_NR_memfd_create 386 #define TARGET_NR_bpf 387 #define TARGET_NR_execveat 388 +#define TARGET_NR_userfaultfd 389 +#define TARGET_NR_membarrier 390 +#define TARGET_NR_mlock2 391 +#define TARGET_NR_copy_file_range 392 +#define TARGET_NR_preadv2 393 +#define TARGET_NR_pwritev2 394 +#define TARGET_NR_pkey_mprotect 395 +#define TARGET_NR_pkey_alloc 396 +#define TARGET_NR_pkey_free 397 +#define TARGET_NR_statx 398 +#define TARGET_NR_io_pgetevents 399 +#define TARGET_NR_rseq 400 +/* 401 and 402 are unused */ +#define TARGET_NR_clock_gettime64 403 +#define TARGET_NR_clock_settime64 404 +#define TARGET_NR_clock_adjtime64 405 +#define TARGET_NR_clock_getres_time64 406 +#define TARGET_NR_clock_nanosleep_time64 407 +#define TARGET_NR_timer_gettime64 408 +#define TARGET_NR_timer_settime64 409 +#define TARGET_NR_timerfd_gettime64 410 +#define TARGET_NR_timerfd_settime64 411 +#define TARGET_NR_utimensat_time64 412 +#define TARGET_NR_pselect6_time64 413 +#define TARGET_NR_ppoll_time64 414 +#define TARGET_NR_io_pgetevents_time64 416 +#define TARGET_NR_recvmmsg_time64 417 +#define TARGET_NR_mq_timedsend_time64 418 +#define TARGET_NR_mq_timedreceive_time64 419 +#define TARGET_NR_semtimedop_time64 420 +#define TARGET_NR_rt_sigtimedwait_time64 421 +#define TARGET_NR_futex_time64 422 +#define TARGET_NR_sched_rr_get_interval_time64 423 +#define TARGET_NR_pidfd_send_signal 424 +#define TARGET_NR_io_uring_setup 425 +#define TARGET_NR_io_uring_enter 426 +#define TARGET_NR_io_uring_register 427 +#define TARGET_NR_open_tree 428 +#define TARGET_NR_move_mount 429 +#define TARGET_NR_fsopen 430 +#define TARGET_NR_fsconfig 431 +#define TARGET_NR_fsmount 432 +#define TARGET_NR_fspick 433 +#define TARGET_NR_pidfd_open 434 +#define TARGET_NR_clone3 435 #endif From patchwork Sat Jan 11 15:40:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328871 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B2AC114B4 for ; Sat, 11 Jan 2020 15:45:20 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8ADC1206ED for ; Sat, 11 Jan 2020 15:45:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8ADC1206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58462 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIww-0007DN-P0 for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:45:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50892) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIuH-0002qw-2N for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIuD-0002iK-Ks for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:32 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:46834 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIuC-0002fa-W7 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:29 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id E69831A1EAC; Sat, 11 Jan 2020 16:42:25 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id C7CBB1A1187; Sat, 11 Jan 2020 16:42:25 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 04/19] linux-user: mips: Update syscall numbers to kernel 5.5 rc3 level Date: Sat, 11 Jan 2020 16:40:26 +0100 Message-Id: <1578757241-29583-5-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Update mips syscall numbers based on Linux kernel tag v5.5-rc3 (commit 46cf053e). Signed-off-by: Aleksandar Markovic --- linux-user/mips/cpu_loop.c | 78 +++++++++++++++++++++++++++++++++++++++++- linux-user/mips/syscall_nr.h | 45 ++++++++++++++++++++++++ linux-user/mips64/syscall_nr.h | 13 +++++++ 3 files changed, 135 insertions(+), 1 deletion(-) diff --git a/linux-user/mips/cpu_loop.c b/linux-user/mips/cpu_loop.c index 39915b3..b81479b 100644 --- a/linux-user/mips/cpu_loop.c +++ b/linux-user/mips/cpu_loop.c @@ -25,8 +25,9 @@ #include "internal.h" # ifdef TARGET_ABI_MIPSO32 +# define MIPS_SYSCALL_NUMBER_UNUSED -1 # define MIPS_SYS(name, args) args, -static const uint8_t mips_syscall_args[] = { +static const int8_t mips_syscall_args[] = { MIPS_SYS(sys_syscall , 8) /* 4000 */ MIPS_SYS(sys_exit , 1) MIPS_SYS(sys_fork , 0) @@ -390,6 +391,75 @@ static const uint8_t mips_syscall_args[] = { MIPS_SYS(sys_copy_file_range, 6) /* 360 */ MIPS_SYS(sys_preadv2, 6) MIPS_SYS(sys_pwritev2, 6) + MIPS_SYS(sys_pkey_mprotect, 4) + MIPS_SYS(sys_pkey_alloc, 2) + MIPS_SYS(sys_pkey_free, 1) /* 365 */ + MIPS_SYS(sys_statx, 5) + MIPS_SYS(sys_rseq, 4) + MIPS_SYS(sys_io_pgetevents, 6) + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, /* 370 */ + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, /* 375 */ + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, /* 380 */ + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, /* 385 */ + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, /* 390 */ + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYSCALL_NUMBER_UNUSED, + MIPS_SYS(sys_semget, 3) + MIPS_SYS(sys_semctl, 4) + MIPS_SYS(sys_shmget, 3) /* 395 */ + MIPS_SYS(sys_shmctl, 3) + MIPS_SYS(sys_shmat, 3) + MIPS_SYS(sys_shmdt, 1) + MIPS_SYS(sys_msgget, 2) + MIPS_SYS(sys_msgsnd, 4) /* 400 */ + MIPS_SYS(sys_msgrcv, 5) + MIPS_SYS(sys_msgctl, 3) + MIPS_SYS(sys_timer_gettime64, 2) + MIPS_SYS(sys_timer_settime64, 4) + MIPS_SYS(sys_timerfd_gettime64, 2) /* 410 */ + MIPS_SYS(sys_timerfd_settime64, 4) + MIPS_SYS(sys_utimensat_time64, 4) + MIPS_SYS(sys_pselect6_time64, 6) + MIPS_SYS(sys_ppoll_time64, 5) + MIPS_SYSCALL_NUMBER_UNUSED, /* 415 */ + MIPS_SYS(sys_io_pgetevents_time64, 6) + MIPS_SYS(sys_recvmmsg_time64, 5) + MIPS_SYS(sys_mq_timedsend_time64, 5) + MIPS_SYS(sys_mq_timedreceive_time64, 5) + MIPS_SYS(sys_semtimedop_time64, 4) /* 420 */ + MIPS_SYS(sys_rt_sigtimedwait_time64, 4) + MIPS_SYS(sys_futex_time64, 6) + MIPS_SYS(sys_sched_rr_get_interval_time64, 2) + MIPS_SYS(sys_pidfd_send_signal, 4) + MIPS_SYS(sys_io_uring_setup, 2) /* 425 */ + MIPS_SYS(sys_io_uring_enter, 6) + MIPS_SYS(sys_io_uring_register, 4) + MIPS_SYS(sys_open_tree, 3) + MIPS_SYS(sys_move_mount, 5) + MIPS_SYS(sys_fsopen, 2) /* 430 */ + MIPS_SYS(sys_fsconfig, 5) + MIPS_SYS(sys_fsmount, 3) + MIPS_SYS(sys_fspick, 3) + MIPS_SYS(sys_pidfd_open, 2) + MIPS_SYS(sys_clone3, 2) /* 435 */ + }; # undef MIPS_SYS # endif /* O32 */ @@ -447,8 +517,14 @@ void cpu_loop(CPUMIPSState *env) # ifdef TARGET_ABI_MIPSO32 syscall_num = env->active_tc.gpr[2] - 4000; if (syscall_num >= sizeof(mips_syscall_args)) { + /* syscall_num is larger that any defined for MIPS O32 */ + ret = -TARGET_ENOSYS; + } else if (mips_syscall_args[syscall_num] == + MIPS_SYSCALL_NUMBER_UNUSED) { + /* syscall_num belongs to the range not defined for MIPS O32 */ ret = -TARGET_ENOSYS; } else { + /* syscall_num is valid */ int nb_args; abi_ulong sp_reg; abi_ulong arg5 = 0, arg6 = 0, arg7 = 0, arg8 = 0; diff --git a/linux-user/mips/syscall_nr.h b/linux-user/mips/syscall_nr.h index 7fa7fa5..0be3af1 100644 --- a/linux-user/mips/syscall_nr.h +++ b/linux-user/mips/syscall_nr.h @@ -376,5 +376,50 @@ #define TARGET_NR_statx (TARGET_NR_Linux + 366) #define TARGET_NR_rseq (TARGET_NR_Linux + 367) #define TARGET_NR_io_pgetevents (TARGET_NR_Linux + 368) +/* room for arch specific calls */ +#define TARGET_NR_semget (TARGET_NR_Linux + 393) +#define TARGET_NR_semctl (TARGET_NR_Linux + 394) +#define TARGET_NR_shmget (TARGET_NR_Linux + 395) +#define TARGET_NR_shmctl (TARGET_NR_Linux + 396) +#define TARGET_NR_shmat (TARGET_NR_Linux + 397) +#define TARGET_NR_shmdt (TARGET_NR_Linux + 398) +#define TARGET_NR_msgget (TARGET_NR_Linux + 399) +#define TARGET_NR_msgsnd (TARGET_NR_Linux + 400) +#define TARGET_NR_msgrcv (TARGET_NR_Linux + 401) +#define TARGET_NR_msgctl (TARGET_NR_Linux + 402) +/* 403-423 common for 32-bit archs */ +#define TARGET_NR_clock_gettime64 (TARGET_NR_Linux + 403) +#define TARGET_NR_clock_settime64 (TARGET_NR_Linux + 404) +#define TARGET_NR_clock_adjtime64 (TARGET_NR_Linux + 405) +#define TARGET_NR_clock_getres_time64 (TARGET_NR_Linux + 406) +#define TARGET_NR_clock_nanosleep_time64 (TARGET_NR_Linux + 407) +#define TARGET_NR_timer_gettime64 (TARGET_NR_Linux + 408) +#define TARGET_NR_timer_settime64 (TARGET_NR_Linux + 409) +#define TARGET_NR_timerfd_gettime64 (TARGET_NR_Linux + 410) +#define TARGET_NR_timerfd_settime64 (TARGET_NR_Linux + 411) +#define TARGET_NR_utimensat_time64 (TARGET_NR_Linux + 412) +#define TARGET_NR_pselect6_time64 (TARGET_NR_Linux + 413) +#define TARGET_NR_ppoll_time64 (TARGET_NR_Linux + 414) +#define TARGET_NR_io_pgetevents_time64 (TARGET_NR_Linux + 416) +#define TARGET_NR_recvmmsg_time64 (TARGET_NR_Linux + 417) +#define TARGET_NR_mq_timedsend_time64 (TARGET_NR_Linux + 418) +#define TARGET_NR_mq_timedreceive_time64 (TARGET_NR_Linux + 419) +#define TARGET_NR_semtimedop_time64 (TARGET_NR_Linux + 420) +#define TARGET_NR_rt_sigtimedwait_time64 (TARGET_NR_Linux + 421) +#define TARGET_NR_futex_time64 (TARGET_NR_Linux + 422) +#define TARGET_NR_sched_rr_get_interval_time64 (TARGET_NR_Linux + 423) +/* 424 onwards common for all archs */ +#define TARGET_NR_pidfd_send_signal (TARGET_NR_Linux + 424) +#define TARGET_NR_io_uring_setup (TARGET_NR_Linux + 425) +#define TARGET_NR_io_uring_enter (TARGET_NR_Linux + 426) +#define TARGET_NR_io_uring_register (TARGET_NR_Linux + 427) +#define TARGET_NR_open_tree (TARGET_NR_Linux + 428) +#define TARGET_NR_move_mount (TARGET_NR_Linux + 429) +#define TARGET_NR_fsopen (TARGET_NR_Linux + 430) +#define TARGET_NR_fsconfig (TARGET_NR_Linux + 431) +#define TARGET_NR_fsmount (TARGET_NR_Linux + 432) +#define TARGET_NR_fspick (TARGET_NR_Linux + 433) +#define TARGET_NR_pidfd_open (TARGET_NR_Linux + 434) +#define TARGET_NR_clone3 (TARGET_NR_Linux + 435) #endif diff --git a/linux-user/mips64/syscall_nr.h b/linux-user/mips64/syscall_nr.h index db40f69..c86943a 100644 --- a/linux-user/mips64/syscall_nr.h +++ b/linux-user/mips64/syscall_nr.h @@ -674,6 +674,19 @@ #define TARGET_NR_statx (TARGET_NR_Linux + 326) #define TARGET_NR_rseq (TARGET_NR_Linux + 327) #define TARGET_NR_io_pgetevents (TARGET_NR_Linux + 328) +/* 329 through 423 are reserved to sync up with other architectures */ +#define TARGET_NR_pidfd_send_signal (TARGET_NR_Linux + 424) +#define TARGET_NR_io_uring_setup (TARGET_NR_Linux + 425) +#define TARGET_NR_io_uring_enter (TARGET_NR_Linux + 426) +#define TARGET_NR_io_uring_register (TARGET_NR_Linux + 427) +#define TARGET_NR_open_tree (TARGET_NR_Linux + 428) +#define TARGET_NR_move_mount (TARGET_NR_Linux + 429) +#define TARGET_NR_fsopen (TARGET_NR_Linux + 430) +#define TARGET_NR_fsconfig (TARGET_NR_Linux + 431) +#define TARGET_NR_fsmount (TARGET_NR_Linux + 432) +#define TARGET_NR_fspick (TARGET_NR_Linux + 433) +#define TARGET_NR_pidfd_open (TARGET_NR_Linux + 434) +#define TARGET_NR_clone3 (TARGET_NR_Linux + 435) #endif #endif From patchwork Sat Jan 11 15:40:27 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328881 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A96ED109A for ; Sat, 11 Jan 2020 15:48:33 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4474E206ED for ; Sat, 11 Jan 2020 15:48:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4474E206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58502 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ03-0003Aj-KG for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:48:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51131) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIuM-00033O-Vd for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIuL-0002zZ-7R for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:38 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:46865 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIuK-0002w8-WD for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:37 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id D93F91A1FD0; Sat, 11 Jan 2020 16:42:34 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id B81B61A1187; Sat, 11 Jan 2020 16:42:34 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 05/19] linux-user: x86_64: Update syscall numbers to kernel 5.5 rc3 level Date: Sat, 11 Jan 2020 16:40:27 +0100 Message-Id: <1578757241-29583-6-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , Eduardo Habkost , laurent@vivier.eu, amarkovic@wavecomp.com, Richard Henderson Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Update x86_64 syscall numbers based on Linux kernel tag v5.5-rc3 (commit 46cf053e). Signed-off-by: Aleksandar Markovic --- cc: Paolo Bonzini cc: Richard Henderson cc: Eduardo Habkost --- linux-user/x86_64/syscall_nr.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/linux-user/x86_64/syscall_nr.h b/linux-user/x86_64/syscall_nr.h index 9b6981e..e5d14ec 100644 --- a/linux-user/x86_64/syscall_nr.h +++ b/linux-user/x86_64/syscall_nr.h @@ -328,5 +328,29 @@ #define TARGET_NR_membarrier 324 #define TARGET_NR_mlock2 325 #define TARGET_NR_copy_file_range 326 +#define TARGET_NR_preadv2 327 +#define TARGET_NR_pwritev2 328 +#define TARGET_NR_pkey_mprotect 329 +#define TARGET_NR_pkey_alloc 330 +#define TARGET_NR_pkey_free 331 +#define TARGET_NR_statx 332 +#define TARGET_NR_io_pgetevents 333 +#define TARGET_NR_rseq 334 +/* + * don't use numbers 387 through 423, add new calls after the last + * 'common' entry + */ +#define TARGET_NR_pidfd_send_signal 424 +#define TARGET_NR_io_uring_setup 425 +#define TARGET_NR_io_uring_enter 426 +#define TARGET_NR_io_uring_register 427 +#define TARGET_NR_open_tree 428 +#define TARGET_NR_move_mount 429 +#define TARGET_NR_fsopen 430 +#define TARGET_NR_fsconfig 431 +#define TARGET_NR_fsmount 432 +#define TARGET_NR_fspick 433 +#define TARGET_NR_pidfd_open 434 +#define TARGET_NR_clone3 435 #endif From patchwork Sat Jan 11 15:40:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328875 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2896F109A for ; Sat, 11 Jan 2020 15:45:26 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0972F206ED for ; Sat, 11 Jan 2020 15:45:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0972F206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58466 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIx2-0007J4-B1 for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:45:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51347) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIuS-0003En-3E for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIuQ-0003Gr-Tr for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:43 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:46900 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIuQ-0003DD-MJ for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:42:42 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 919F41A1FDA; Sat, 11 Jan 2020 16:42:40 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 76B9F1A1187; Sat, 11 Jan 2020 16:42:40 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 06/19] linux-user: xtensa: Update syscall numbers to kernel 5.5 rc3 level Date: Sat, 11 Jan 2020 16:40:28 +0100 Message-Id: <1578757241-29583-7-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Max Filippov , laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Update xtensa syscall numbers based on Linux kernel tag v5.5-rc3 (commit 46cf053e). Signed-off-by: Aleksandar Markovic --- cc: Max Filippov --- linux-user/xtensa/syscall_nr.h | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/linux-user/xtensa/syscall_nr.h b/linux-user/xtensa/syscall_nr.h index 27645be..3d19d0c 100644 --- a/linux-user/xtensa/syscall_nr.h +++ b/linux-user/xtensa/syscall_nr.h @@ -431,7 +431,41 @@ #define TARGET_NR_pkey_free 350 #define TARGET_NR_statx 351 - -#define TARGET_NR_syscall_count 352 +#define TARGET_NR_rseq 352 +/* 353 through 402 are unassigned to sync up with generic numbers */ +#define TARGET_NR_clock_gettime64 403 +#define TARGET_NR_clock_settime64 404 +#define TARGET_NR_clock_adjtime64 405 +#define TARGET_NR_clock_getres_time64 406 +#define TARGET_NR_clock_nanosleep_time64 407 +#define TARGET_NR_timer_gettime64 408 +#define TARGET_NR_timer_settime64 409 +#define TARGET_NR_timerfd_gettime64 410 +#define TARGET_NR_timerfd_settime64 411 +#define TARGET_NR_utimensat_time64 412 +#define TARGET_NR_pselect6_time64 413 +#define TARGET_NR_ppoll_time64 414 +#define TARGET_NR_io_pgetevents_time64 416 +#define TARGET_NR_recvmmsg_time64 417 +#define TARGET_NR_mq_timedsend_time64 418 +#define TARGET_NR_mq_timedreceive_time64 419 +#define TARGET_NR_semtimedop_time64 420 +#define TARGET_NR_rt_sigtimedwait_time64 421 +#define TARGET_NR_futex_time64 422 +#define TARGET_NR_sched_rr_get_interval_time64 423 +#define TARGET_NR_pidfd_send_signal 424 +#define TARGET_NR_io_uring_setup 425 +#define TARGET_NR_io_uring_enter 426 +#define TARGET_NR_io_uring_register 427 +#define TARGET_NR_open_tree 428 +#define TARGET_NR_move_mount 429 +#define TARGET_NR_fsopen 430 +#define TARGET_NR_fsconfig 431 +#define TARGET_NR_fsmount 432 +#define TARGET_NR_fspick 433 +#define TARGET_NR_pidfd_open 434 +#define TARGET_NR_clone3 435 + +#define TARGET_NR_syscall_count 436 #endif /* XTENSA_SYSCALL_NR_H */ From patchwork Sat Jan 11 15:40:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328879 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 90135109A for ; Sat, 11 Jan 2020 15:48:27 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6D6BF206ED for ; Sat, 11 Jan 2020 15:48:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6D6BF206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58500 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIzx-00033J-Up for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:48:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54053) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIvT-00050P-Sf for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:43:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIvS-0007Py-Td for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:43:47 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48055 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIvS-0007KC-Ln for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:43:46 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 6EE1B1A1FDA; Sat, 11 Jan 2020 16:43:44 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 526931A1187; Sat, 11 Jan 2020 16:43:44 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 07/19] linux-user: xtensa: Remove unused constant TARGET_NR_syscall_count Date: Sat, 11 Jan 2020 16:40:29 +0100 Message-Id: <1578757241-29583-8-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Max Filippov , laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Currently, there is no usage of TARGET_NR_syscall_count for target xtensa, and there is no obvious indication if there is some planned usage in future. Acked-by: Max Filippov --- cc: Max Filippov --- linux-user/xtensa/syscall_nr.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/linux-user/xtensa/syscall_nr.h b/linux-user/xtensa/syscall_nr.h index 3d19d0c..39bff65 100644 --- a/linux-user/xtensa/syscall_nr.h +++ b/linux-user/xtensa/syscall_nr.h @@ -466,6 +466,4 @@ #define TARGET_NR_pidfd_open 434 #define TARGET_NR_clone3 435 -#define TARGET_NR_syscall_count 436 - #endif /* XTENSA_SYSCALL_NR_H */ From patchwork Sat Jan 11 15:40:30 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328877 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 37E84109A for ; Sat, 11 Jan 2020 15:46:38 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1814F206ED for ; Sat, 11 Jan 2020 15:46:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1814F206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58480 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIyC-0000OL-JZ for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:46:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57142) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIwX-0006f7-AT for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIwW-0003ww-5X for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:53 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48557 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIwV-0003sh-US for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:52 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id CD7921A1FDA; Sat, 11 Jan 2020 16:44:49 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id ABF1E1A1187; Sat, 11 Jan 2020 16:44:49 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 08/19] linux-user: Add support for FS_IOC_VERSION ioctls Date: Sat, 11 Jan 2020 16:40:30 +0100 Message-Id: <1578757241-29583-9-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic A very specific thing for these two ioctls is that their code implies that their third argument is of type 'long', but the kernel uses that argument as if it is of type 'int'. This anomaly is recognized also in commit 6080723 (linux-user: Implement FS_IOC_GETFLAGS and FS_IOC_SETFLAGS ioctls). Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 2 ++ linux-user/syscall_defs.h | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index c6b9d6a..c44f42e 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -138,6 +138,8 @@ IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_INT)) IOCTL(FS_IOC_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) #ifdef CONFIG_USBFS /* USB ioctls */ diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 98c2119..f68a8b6 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -911,12 +911,14 @@ struct target_pollfd { #define TARGET_FICLONE TARGET_IOW(0x94, 9, int) #define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range) -/* Note that the ioctl numbers claim type "long" but the actual type - * used by the kernel is "int". +/* + * Note that the ioctl numbers for FS_IOC_ + * claim type "long" but the actual type used by the kernel is "int". */ #define TARGET_FS_IOC_GETFLAGS TARGET_IOR('f', 1, abi_long) #define TARGET_FS_IOC_SETFLAGS TARGET_IOW('f', 2, abi_long) - +#define TARGET_FS_IOC_GETVERSION TARGET_IOR('v', 1, abi_long) +#define TARGET_FS_IOC_SETVERSION TARGET_IOW('v', 2, abi_long) #define TARGET_FS_IOC_FIEMAP TARGET_IOWR('f',11,struct fiemap) /* usb ioctls */ From patchwork Sat Jan 11 15:40:31 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328889 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E92B3109A for ; Sat, 11 Jan 2020 15:51:22 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C9100206ED for ; Sat, 11 Jan 2020 15:51:22 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C9100206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58540 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ2n-0007AX-9B for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:51:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57391) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIwc-0006nb-EL for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIwb-0004LW-9L for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:58 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48564 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIwb-0004Fu-1C for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:57 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id E310C1A1FDA; Sat, 11 Jan 2020 16:44:54 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id CB2E41A1187; Sat, 11 Jan 2020 16:44:54 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 09/19] linux-user: Add support for FS_IOC32_FLAGS ioctls Date: Sat, 11 Jan 2020 16:40:31 +0100 Message-Id: <1578757241-29583-10-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic These FS_IOC32_FLAGS ioctls are identical to FS_IOC_FLAGS ioctls, but without the anomaly of their number defined as if their third argument is of type long, while it is treated internally in kernel as is of type int. Signed-off-by: Aleksandar Markovic --- 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 c44f42e..4fd6939 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -140,6 +140,8 @@ IOCTL(FS_IOC_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) IOCTL(FS_IOC_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) IOCTL(FS_IOC_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC32_GETFLAGS, IOC_R, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC32_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) #ifdef CONFIG_USBFS /* USB ioctls */ diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index f68a8b6..964b2b4 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -920,6 +920,8 @@ struct target_pollfd { #define TARGET_FS_IOC_GETVERSION TARGET_IOR('v', 1, abi_long) #define TARGET_FS_IOC_SETVERSION TARGET_IOW('v', 2, abi_long) #define TARGET_FS_IOC_FIEMAP TARGET_IOWR('f',11,struct fiemap) +#define TARGET_FS_IOC32_GETFLAGS TARGET_IOR('f', 1, int) +#define TARGET_FS_IOC32_SETFLAGS TARGET_IOW('f', 2, int) /* usb ioctls */ #define TARGET_USBDEVFS_CONTROL TARGET_IOWRU('U', 0) From patchwork Sat Jan 11 15:40:32 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328883 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 29CCA14B4 for ; Sat, 11 Jan 2020 15:49:20 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0A79F206ED for ; Sat, 11 Jan 2020 15:49:19 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0A79F206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58508 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ0o-0004Dy-F7 for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:49:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57459) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIwe-0006ps-00 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIwc-0004UH-U7 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:59 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48571 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIwc-0004Or-MT for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:44:58 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 8B0E91A1FDD; Sat, 11 Jan 2020 16:44:56 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 748F21A1187; Sat, 11 Jan 2020 16:44:56 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 10/19] linux-user: Add support for FS_IOC32_VERSION ioctls Date: Sat, 11 Jan 2020 16:40:32 +0100 Message-Id: <1578757241-29583-11-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic These FS_IOC32_VERSION ioctls are identical to FS_IOC_VERSION ioctls, but without the anomaly of their number defined as if their third argument is of type long, while it is treated internally in kernel as is of type int. Signed-off-by: Aleksandar Markovic --- 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 4fd6939..3affd88 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -142,6 +142,8 @@ IOCTL(FS_IOC_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) IOCTL(FS_IOC32_GETFLAGS, IOC_R, MK_PTR(TYPE_INT)) IOCTL(FS_IOC32_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC32_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) + IOCTL(FS_IOC32_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) #ifdef CONFIG_USBFS /* USB ioctls */ diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 964b2b4..a73cc3d 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -922,6 +922,8 @@ struct target_pollfd { #define TARGET_FS_IOC_FIEMAP TARGET_IOWR('f',11,struct fiemap) #define TARGET_FS_IOC32_GETFLAGS TARGET_IOR('f', 1, int) #define TARGET_FS_IOC32_SETFLAGS TARGET_IOW('f', 2, int) +#define TARGET_FS_IOC32_GETVERSION TARGET_IOR('v', 1, int) +#define TARGET_FS_IOC32_SETVERSION TARGET_IOW('v', 2, int) /* usb ioctls */ #define TARGET_USBDEVFS_CONTROL TARGET_IOWRU('U', 0) From patchwork Sat Jan 11 15:40:33 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328891 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EF61814B4 for ; Sat, 11 Jan 2020 15:52:02 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id CFCE8206ED for ; Sat, 11 Jan 2020 15:52:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CFCE8206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ3R-0008Ls-8H for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:52:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57540) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIwf-0006sf-NJ for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIwe-0004cx-HD for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:01 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48579 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIwe-0004XN-9T for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:00 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 22B4D1A2016; Sat, 11 Jan 2020 16:44:58 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id F42191A1FDF; Sat, 11 Jan 2020 16:44:57 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 11/19] linux-user: Add support for FS_IOC_FSXATTR ioctls Date: Sat, 11 Jan 2020 16:40:33 +0100 Message-Id: <1578757241-29583-12-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Both FS_IOC_FSGETXATTR and FS_IOC_FSSETXATTR accept a pointer to the structure struct file_clone_range { __s64 src_fd; __u64 src_offset; __u64 src_length; __u64 dest_offset; }; as their third argument. These ioctls were relatively recently introduced, so the "#ifdef" guards are used in this implementation. Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 7 +++++++ linux-user/syscall_defs.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index 3affd88..e1b89a7 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -144,6 +144,13 @@ IOCTL(FS_IOC32_SETFLAGS, IOC_W, MK_PTR(TYPE_INT)) IOCTL(FS_IOC32_GETVERSION, IOC_R, MK_PTR(TYPE_INT)) IOCTL(FS_IOC32_SETVERSION, IOC_W, MK_PTR(TYPE_INT)) +#ifdef FS_IOC_FSGETXATTR + IOCTL(FS_IOC_FSGETXATTR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_fsxattr))) +#endif +#ifdef FS_IOC_FSSETXATTR + IOCTL(FS_IOC_FSSETXATTR, IOC_W, MK_PTR(MK_STRUCT(STRUCT_fsxattr))) +#endif + #ifdef CONFIG_USBFS /* USB ioctls */ diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index a73cc3d..12cd3de 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -924,6 +924,8 @@ struct target_pollfd { #define TARGET_FS_IOC32_SETFLAGS TARGET_IOW('f', 2, int) #define TARGET_FS_IOC32_GETVERSION TARGET_IOR('v', 1, int) #define TARGET_FS_IOC32_SETVERSION TARGET_IOW('v', 2, int) +#define TARGET_FS_IOC_FSGETXATTR TARGET_IOR('X', 31, struct file_clone_range) +#define TARGET_FS_IOC_FSSETXATTR TARGET_IOR('X', 32, struct file_clone_range) /* usb ioctls */ #define TARGET_USBDEVFS_CONTROL TARGET_IOWRU('U', 0) From patchwork Sat Jan 11 15:40:34 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328897 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EF9A6109A for ; Sat, 11 Jan 2020 15:53:58 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D0DC7206ED for ; Sat, 11 Jan 2020 15:53:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D0DC7206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58564 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ5I-0002Sp-Vs for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:53:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59596) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIxX-0007tK-LJ for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIxT-0007lu-FE for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:54 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48655 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIxT-0007j1-1q for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:51 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 6F07C1A1FDA; Sat, 11 Jan 2020 16:45:48 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 4E0281A1187; Sat, 11 Jan 2020 16:45:48 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 12/19] linux-user: Add support for FITRIM ioctl Date: Sat, 11 Jan 2020 16:40:34 +0100 Message-Id: <1578757241-29583-13-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic FITRIM ioctl accepts a pointer to the structure struct fstrim_range { __u64 start; __u64 len; __u64 minlen; }; as its third argument. All ioctls in this group (FI* ioctl) are guarded with "#ifdef", so the guards are used in this implementation too for consistency (however, many of ioctls in FI* group became old enough that their #ifdef guards could be removed, bit this is out of the scope of this patch). Signed-off-by: Aleksandar Markovic --- 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 e1b89a7..e4f0a04 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -123,6 +123,9 @@ #ifdef FIBMAP IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG)) #endif +#ifdef FITRIM + IOCTL(FITRIM, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_fstrim_range))) +#endif #ifdef FICLONE IOCTL(FICLONE, IOC_W, TYPE_INT) IOCTL(FICLONERANGE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_file_clone_range))) diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 12cd3de..40851e9 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -908,6 +908,7 @@ struct target_pollfd { #define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */ #define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */ +#define TARGET_FITRIM TARGET_IOWR('X', 121, struct fstrim_range) #define TARGET_FICLONE TARGET_IOW(0x94, 9, int) #define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range) From patchwork Sat Jan 11 15:40:35 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328887 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7487214B4 for ; Sat, 11 Jan 2020 15:51:16 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5483B206ED for ; Sat, 11 Jan 2020 15:51:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5483B206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58538 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ2h-00073P-EA for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:51:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59696) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIxc-0007zm-M0 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIxb-0007rD-Em for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:00 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48660 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIxZ-0007lV-OY for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:45:59 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id DBA3D1A1DA1; Sat, 11 Jan 2020 16:45:49 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id C51F81A1187; Sat, 11 Jan 2020 16:45:49 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 13/19] linux-user: Add support for FIFREEZE and FITHAW ioctls Date: Sat, 11 Jan 2020 16:40:35 +0100 Message-Id: <1578757241-29583-14-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic Both FIFREEZE and FITHAW ioctls accept an integer as their third argument. All ioctls in this group (FI* ioctl) are guarded with "#ifdef", so the guards are used in this implementation too for consistency (however, many of ioctls in FI* group became old enough that their #ifdef guards could be removed, bit this is out of the scope of this patch). Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 6 ++++++ linux-user/syscall_defs.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index e4f0a04..66f8c4e 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -123,6 +123,12 @@ #ifdef FIBMAP IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG)) #endif +#ifdef FIFREEZE + IOCTL(FIFREEZE, IOC_W | IOC_R, TYPE_INT) +#endif +#ifdef FITHAW + IOCTL(FITHAW, IOC_W | IOC_R, TYPE_INT) +#endif #ifdef FITRIM IOCTL(FITRIM, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_fstrim_range))) #endif diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 40851e9..6b88030 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -908,6 +908,8 @@ struct target_pollfd { #define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */ #define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */ +#define TARGET_FIFREEZE TARGET_IOWR('X', 119, int) /* Freeze */ +#define TARGET_FITHAW TARGET_IOWR('X', 120, int) /* Thaw */ #define TARGET_FITRIM TARGET_IOWR('X', 121, struct fstrim_range) #define TARGET_FICLONE TARGET_IOW(0x94, 9, int) #define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range) From patchwork Sat Jan 11 15:40:36 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328885 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id C7CF414B4 for ; Sat, 11 Jan 2020 15:51:11 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9CF9A206ED for ; Sat, 11 Jan 2020 15:51:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9CF9A206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58536 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ2b-0006sz-UC for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:51:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33557) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIyP-0000jG-52 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIyN-0001yW-UN for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:49 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48737 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIyN-0001re-Io for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:47 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id E41E61A1FDA; Sat, 11 Jan 2020 16:46:44 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id CA9DF1A1187; Sat, 11 Jan 2020 16:46:44 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 14/19] linux-user: Add support for FD ioctls Date: Sat, 11 Jan 2020 16:40:36 +0100 Message-Id: <1578757241-29583-15-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands for controlling error reporting of a floppy drive. FDSETEMSGTRESH's third agrument is a pointer to the structure: struct floppy_max_errors { unsigned int abort, /* number of errors to be reached before aborting */ read_track, /* maximal number of errors permitted to read an * entire track at once */ reset, /* maximal number of errors before a reset is tried */ recal, /* maximal number of errors before a recalibrate is * tried */ /* * Threshold for reporting FDC errors to the console. * Setting this to zero may flood your screen when using * ultra cheap floppies ;-) */ reporting; }; defined in Linux kernel header . Since all fields of the structure are of type 'unsigned int', there is no need to define "target_floppy_max_errors". FDSETMAXERRS and FDGETMAXERRS ioctls do not use the third argument. Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 3 +++ linux-user/syscall_defs.h | 3 +++ linux-user/syscall_types.h | 7 +++++++ 3 files changed, 13 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index 66f8c4e..9e3ca90 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -114,7 +114,10 @@ IOCTL(FDMSGON, 0, TYPE_NULL) IOCTL(FDMSGOFF, 0, TYPE_NULL) + IOCTL(FDSETEMSGTRESH, 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 6b88030..efe3860 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -899,7 +899,10 @@ struct target_pollfd { #define TARGET_FDMSGON TARGET_IO(2, 0x45) #define TARGET_FDMSGOFF TARGET_IO(2, 0x46) +#define TARGET_FDSETEMSGTRESH TARGET_IO(2, 0x4a) #define TARGET_FDFLUSH TARGET_IO(2, 0x4b) +#define TARGET_FDSETMAXERRS TARGET_IOW(2, 0x4c, struct floppy_max_errors) +#define TARGET_FDGETMAXERRS TARGET_IOR(2, 0x0e, struct 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 4e36983..e4e0429 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 */ + #if defined(CONFIG_USBFS) /* usb device ioctls */ STRUCT(usbdevfs_ctrltransfer, From patchwork Sat Jan 11 15:40:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328903 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 82D9114B4 for ; Sat, 11 Jan 2020 15:56:30 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 63574206ED for ; Sat, 11 Jan 2020 15:56:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 63574206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58598 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ7l-00063s-Js for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:56:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33608) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIyQ-0000kc-74 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIyO-000219-P3 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:49 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48742 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIyO-0001xo-Hg for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:48 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 688C31A1FDD; Sat, 11 Jan 2020 16:46:46 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 51A8B1A1187; Sat, 11 Jan 2020 16:46:46 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 15/19] linux-user: Add support for FDFMT ioctls Date: Sat, 11 Jan 2020 16:40:37 +0100 Message-Id: <1578757241-29583-16-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls provide means for controlling formatting of a floppy drive. FDFMTTRK's third agrument is a pointer to the structure: struct format_descr { unsigned int device,head,track; }; defined in Linux kernel header . Since all fields of the structure are of type 'unsigned int', there is no need to define "target_format_descr". FDFMTBEG and FDFMTEND ioctls do not use the third argument. Signed-off-by: Aleksandar Markovic --- 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 9e3ca90..e754a6b 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -115,6 +115,9 @@ IOCTL(FDMSGON, 0, TYPE_NULL) IOCTL(FDMSGOFF, 0, TYPE_NULL) IOCTL(FDSETEMSGTRESH, 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(FDSETMAXERRS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors))) IOCTL(FDGETMAXERRS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors))) diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index efe3860..d85ab46 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -899,6 +899,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 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 floppy_max_errors) diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h index e4e0429..8ff78a6 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 */ + STRUCT(floppy_max_errors, TYPE_INT, /* abort */ TYPE_INT, /* read_track */ From patchwork Sat Jan 11 15:40:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328899 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id AF79514B4 for ; Sat, 11 Jan 2020 15:54:51 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8D348206ED for ; Sat, 11 Jan 2020 15:54:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8D348206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58566 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ6A-0003i5-3s for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:54:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33690) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqIyR-0000mf-S1 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqIyQ-00026k-92 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:51 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:48749 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqIyP-00022M-Qn for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:46:50 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id A8CC21A1FDA; Sat, 11 Jan 2020 16:46:47 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 8F6491A1187; Sat, 11 Jan 2020 16:46:47 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 16/19] linux-user: Add support for FDGETFDCSTAT ioctl Date: Sat, 11 Jan 2020 16:40:38 +0100 Message-Id: <1578757241-29583-17-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic FDGETFDCSTAT's third agrument is a pointer to the structure: struct floppy_fdc_state { int spec1; int spec2; int dtr; unsigned char version; unsigned char dor; unsigned long address; unsigned int rawcmd:2; unsigned int reset:1; unsigned int need_configure:1; unsigned int perp_mode:2; unsigned int has_fifo:1; unsigned int driver_version; unsigned char track[4]; }; defined in Linux kernel header . Since there is a fields of the structure of type 'unsigned long', there is a need to define "target_format_descr". Also, five fields rawcmd, reset, need_configure, perp_mode, and has_fifo are all just bitfields and are part od a single 'unsigned int' field. Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 2 ++ linux-user/syscall_defs.h | 18 ++++++++++++++++++ linux-user/syscall_types.h | 12 ++++++++++++ 3 files changed, 32 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index e754a6b..d72cd76 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -122,6 +122,8 @@ 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(FDGETFDCSTAT, IOC_R, + MK_PTR(MK_STRUCT(STRUCT_target_floppy_fdc_state))) IOCTL(FDRAWCMD, 0, TYPE_NULL) IOCTL(FDTWADDLE, 0, TYPE_NULL) IOCTL(FDEJECT, 0, TYPE_NULL) diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index d85ab46..225dcfb 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -897,6 +897,23 @@ struct target_pollfd { /* From */ +struct target_floppy_fdc_state { + int spec1; /* spec1 value last used */ + int spec2; /* spec2 value last used */ + int dtr; + unsigned char version; /* FDC version code */ + unsigned char dor; + abi_long address; /* io address */ + unsigned int rawcmd:2; + unsigned int reset:1; + unsigned int need_configure:1; + unsigned int perp_mode:2; + unsigned int has_fifo:1; + unsigned int driver_version; /* version code for floppy driver */ + unsigned char track[4]; +}; + + #define TARGET_FDMSGON TARGET_IO(2, 0x45) #define TARGET_FDMSGOFF TARGET_IO(2, 0x46) #define TARGET_FDFMTBEG TARGET_IO(2, 0x47) @@ -907,6 +924,7 @@ struct target_pollfd { #define TARGET_FDSETMAXERRS TARGET_IOW(2, 0x4c, struct floppy_max_errors) #define TARGET_FDGETMAXERRS TARGET_IOR(2, 0x0e, struct floppy_max_errors) #define TARGET_FDRESET TARGET_IO(2, 0x54) +#define TARGET_FDGETFDCSTAT TARGET_IOR(2, 0x15, struct target_floppy_fdc_state) #define TARGET_FDRAWCMD TARGET_IO(2, 0x58) #define TARGET_FDTWADDLE TARGET_IO(2, 0x59) #define TARGET_FDEJECT TARGET_IO(2, 0x5a) diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h index 8ff78a6..a111c61 100644 --- a/linux-user/syscall_types.h +++ b/linux-user/syscall_types.h @@ -273,6 +273,18 @@ STRUCT(floppy_max_errors, TYPE_INT, /* recal */ TYPE_INT) /* reporting */ +STRUCT(target_floppy_fdc_state, + TYPE_INT, /* spec1 */ + TYPE_INT, /* spec2 */ + TYPE_INT, /* dtr */ + TYPE_CHAR, /* version */ + TYPE_CHAR, /* dor */ + TYPE_ULONG, /* address */ + TYPE_INT, /* bit field for rawcmd:2, reset:1, need_configure:1, */ + /* perp_mode:2, and has_fifo:1 */ + TYPE_INT, /* driver_version */ + MK_ARRAY(TYPE_CHAR, 4)) /* track */ + #if defined(CONFIG_USBFS) /* usb device ioctls */ STRUCT(usbdevfs_ctrltransfer, From patchwork Sat Jan 11 15:40:39 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328895 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9643217EE for ; Sat, 11 Jan 2020 15:53:57 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 768FE206ED for ; Sat, 11 Jan 2020 15:53:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 768FE206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58562 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ5H-0002PX-N0 for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:53:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41175) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ0o-0004Ev-2h for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqJ0m-0003yn-JF for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:17 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:50480 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqJ0m-0003uP-Bk for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:16 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 22BE91A1FDA; Sat, 11 Jan 2020 16:49:14 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id 0AF161A1187; Sat, 11 Jan 2020 16:49:14 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 17/19] configure: Detect kcov support and introduce CONFIG_KCOV Date: Sat, 11 Jan 2020 16:40:39 +0100 Message-Id: <1578757241-29583-18-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic kcov is kernel code coverage tracing tool. It requires kernel 4.4+ compiled with certain kernel options. Its interface consists of three ioctls. This patch checks if kcov support is present on build machine, and stores the result in variable CONFIG_KCOV, meant to be used in linux-user code related to the support for above mentioned ioctls. Signed-off-by: Aleksandar Markovic --- configure | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/configure b/configure index 940bf9e..dbdba8f 100755 --- a/configure +++ b/configure @@ -4752,6 +4752,24 @@ if compile_prog "" "" ; then syncfs=yes fi +# check for kcov support (kernel must be 4.4+, compiled with certain options) +kcov=no +cat > $TMPC << EOF +#include + +int main(void) +{ + ioctl(-1, KCOV_ENABLE, NULL); + ioctl(-1, KCOV_DISABLE, NULL); + ioctl(-1, KCOV_INIT_TRACE, NULL); + + return 0; +} +EOF +if compile_prog "" "" ; then + kcov=yes +fi + # Check we have a new enough version of sphinx-build has_sphinx_build() { # This is a bit awkward but works: create a trivial document and @@ -6874,6 +6892,9 @@ fi if test "$syncfs" = "yes" ; then echo "CONFIG_SYNCFS=y" >> $config_host_mak fi +if test "$kcov" = "yes" ; then + echo "CONFIG_KCOV=y" >> $config_host_mak +fi if test "$inotify" = "yes" ; then echo "CONFIG_INOTIFY=y" >> $config_host_mak fi From patchwork Sat Jan 11 15:40:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328901 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B5807921 for ; Sat, 11 Jan 2020 15:56:25 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 95213206ED for ; Sat, 11 Jan 2020 15:56:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 95213206ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58596 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ7g-0005yE-Ql for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:56:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42213) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ1B-0004nN-NG for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqJ1A-0005q8-DA for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:41 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:50515 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqJ1A-0005kH-50 for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:40 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id 0A9BF1A1FDA; Sat, 11 Jan 2020 16:49:38 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id E5A921A1187; Sat, 11 Jan 2020 16:49:37 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 18/19] linux-user: Add support for KCOV_ ioctls Date: Sat, 11 Jan 2020 16:40:40 +0100 Message-Id: <1578757241-29583-19-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic KCOV_ENABLE and KCOV_DISABLE play the role in kernel coverage tracing. These ioctls do not use the third argument of ioctl() system call and are straightforward to implement in QEMU. Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 5 +++++ linux-user/syscall.c | 3 +++ linux-user/syscall_defs.h | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index d72cd76..39b3825 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -552,3 +552,8 @@ IOCTL_IGNORE(TIOCSTART) IOCTL_IGNORE(TIOCSTOP) #endif + +#ifdef CONFIG_KCOV + IOCTL(KCOV_ENABLE, 0, TYPE_NULL) + IOCTL(KCOV_DISABLE, 0, TYPE_NULL) +#endif diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 171c0ca..6edcb0d 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -73,6 +73,9 @@ #ifdef CONFIG_SENDFILE #include #endif +#ifdef CONFIG_KCOV +#include +#endif #define termios host_termios #define winsize host_winsize diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 225dcfb..87e390d 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -2457,6 +2457,10 @@ struct target_mtpos { #define TARGET_MTIOCGET TARGET_IOR('m', 2, struct target_mtget) #define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct target_mtpos) +/* kcov ioctls */ +#define TARGET_KCOV_ENABLE TARGET_IO('c', 100) +#define TARGET_KCOV_DISABLE TARGET_IO('c', 101) + struct target_sysinfo { abi_long uptime; /* Seconds since boot */ abi_ulong loads[3]; /* 1, 5, and 15 minute load averages */ From patchwork Sat Jan 11 15:40:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aleksandar Markovic X-Patchwork-Id: 11328893 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 091DF14B4 for ; Sat, 11 Jan 2020 15:53:57 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 977A72072E for ; Sat, 11 Jan 2020 15:53:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 977A72072E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rt-rk.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:58560 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ5H-0002Oq-25 for patchwork-qemu-devel@patchwork.kernel.org; Sat, 11 Jan 2020 10:53:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42327) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqJ1E-0004sA-Fp for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqJ1D-00067a-Ba for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:44 -0500 Received: from mx2.rt-rk.com ([89.216.37.149]:50530 helo=mail.rt-rk.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iqJ1D-00061Q-3i for qemu-devel@nongnu.org; Sat, 11 Jan 2020 10:49:43 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.rt-rk.com (Postfix) with ESMTP id F41AF1A1FDD; Sat, 11 Jan 2020 16:49:40 +0100 (CET) X-Virus-Scanned: amavisd-new at rt-rk.com Received: from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local [10.10.14.106]) by mail.rt-rk.com (Postfix) with ESMTPSA id DDB401A1187; Sat, 11 Jan 2020 16:49:40 +0100 (CET) From: Aleksandar Markovic To: qemu-devel@nongnu.org Subject: [PATCH v4 19/19] linux-user: Add support for KCOV_INIT_TRACE ioctl Date: Sat, 11 Jan 2020 16:40:41 +0100 Message-Id: <1578757241-29583-20-git-send-email-aleksandar.markovic@rt-rk.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> References: <1578757241-29583-1-git-send-email-aleksandar.markovic@rt-rk.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 89.216.37.149 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: laurent@vivier.eu, amarkovic@wavecomp.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" From: Aleksandar Markovic KCOV_INIT_TRACE ioctl plays the role in kernel coverage tracing. This ioctl's third argument is of type 'unsigned long', and the implementation in QEMU is straightforward. Signed-off-by: Aleksandar Markovic --- linux-user/ioctls.h | 1 + linux-user/syscall_defs.h | 1 + 2 files changed, 2 insertions(+) diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h index 39b3825..1da71dd 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -556,4 +556,5 @@ #ifdef CONFIG_KCOV IOCTL(KCOV_ENABLE, 0, TYPE_NULL) IOCTL(KCOV_DISABLE, 0, TYPE_NULL) + IOCTL(KCOV_INIT_TRACE, IOC_R, TYPE_ULONG) #endif diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index 87e390d..209c138 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -2460,6 +2460,7 @@ struct target_mtpos { /* kcov ioctls */ #define TARGET_KCOV_ENABLE TARGET_IO('c', 100) #define TARGET_KCOV_DISABLE TARGET_IO('c', 101) +#define TARGET_KCOV_INIT_TRACE TARGET_IOR('c', 1, abi_ulong) struct target_sysinfo { abi_long uptime; /* Seconds since boot */