qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] linux-user: Implement ioctl cmd TIOCGPTPEER


From: Laurent Vivier
Subject: Re: [Qemu-devel] [PATCH v2] linux-user: Implement ioctl cmd TIOCGPTPEER
Date: Thu, 25 Jan 2018 17:28:39 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2

Le 25/01/2018 à 14:18, Andreas Schwab a écrit :
> With glibc 2.27 the openpty function will prefer the TIOCGPTPEER ioctl.
> 
> Signed-off-by: Andreas Schwab <address@hidden>
> ---
> v2: handle host with old kernel headers
> ---
>  linux-user/aarch64/termbits.h    | 2 ++
>  linux-user/alpha/termbits.h      | 1 +
>  linux-user/arm/termbits.h        | 1 +
>  linux-user/cris/termbits.h       | 1 +
>  linux-user/hppa/termbits.h       | 2 ++
>  linux-user/i386/termbits.h       | 1 +
>  linux-user/ioctls.h              | 3 +++
>  linux-user/m68k/termbits.h       | 1 +
>  linux-user/microblaze/termbits.h | 1 +
>  linux-user/mips/termbits.h       | 1 +
>  linux-user/nios2/termbits.h      | 2 ++
>  linux-user/openrisc/termbits.h   | 2 ++
>  linux-user/ppc/termbits.h        | 1 +
>  linux-user/s390x/termbits.h      | 1 +
>  linux-user/sh4/termbits.h        | 1 +
>  linux-user/sparc/termbits.h      | 1 +
>  linux-user/sparc64/termbits.h    | 1 +
>  linux-user/syscall.c             | 9 +++++++++
>  linux-user/tilegx/termbits.h     | 1 +
>  linux-user/x86_64/termbits.h     | 1 +
>  20 files changed, 34 insertions(+)
> 
...
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index 35cad6f944..586c794639 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -40,6 +40,9 @@
>       IOCTL(TIOCSETD, IOC_W, MK_PTR(TYPE_INT))
>       IOCTL(TIOCGPTN, IOC_R, MK_PTR(TYPE_INT))
>       IOCTL(TIOCSPTLCK, IOC_W, MK_PTR(TYPE_INT))
> +#ifdef TIOCGPTPEER
> +     IOCTL_SPECIAL(TIOCGPTPEER, 0, do_ioctl_tiocgptpeer, TYPE_INT)
> +#endif
>       IOCTL(FIOCLEX, 0, TYPE_NULL)
>       IOCTL(FIONCLEX, 0, TYPE_NULL)
>       IOCTL(FIOASYNC, IOC_W, MK_PTR(TYPE_INT))
...
> diff --git a/linux-user/sparc/termbits.h b/linux-user/sparc/termbits.h
> index 691600d27a..98268936dc 100644
> --- a/linux-user/sparc/termbits.h
> +++ b/linux-user/sparc/termbits.h
> @@ -245,6 +245,7 @@ struct target_termios {
>  /* Get minor device of a pty master's FD -- Solaris equiv is ISPTM */
>  #define TARGET_TIOCGPTN      TARGET_IOR('t', 134, unsigned int) /* Get Pty 
> Number */
>  #define TARGET_TIOCSPTLCK    TARGET_IOW('t', 135, int) /* Lock/unlock PTY */
> +#define TARGET_TIOCGPTPEER      TARGET_IO('T', 137) /* Safely open the slave 
> */

On sparc, it's:

#define TIOCGPTPEER     TARGET_IO('t', 137) /* Safely open the slave */

>  
>  /* Little f */
>  #define TARGET_FIOCLEX               TARGET_IO('f', 1)
> diff --git a/linux-user/sparc64/termbits.h b/linux-user/sparc64/termbits.h
> index 691600d27a..98268936dc 100644
> --- a/linux-user/sparc64/termbits.h
> +++ b/linux-user/sparc64/termbits.h
> @@ -245,6 +245,7 @@ struct target_termios {
>  /* Get minor device of a pty master's FD -- Solaris equiv is ISPTM */
>  #define TARGET_TIOCGPTN      TARGET_IOR('t', 134, unsigned int) /* Get Pty 
> Number */
>  #define TARGET_TIOCSPTLCK    TARGET_IOW('t', 135, int) /* Lock/unlock PTY */
> +#define TARGET_TIOCGPTPEER      TARGET_IO('T', 137) /* Safely open the slave 
> */

#define TIOCGPTPEER     TARGET_IO('t', 137) /* Safely open the slave */

If you fix that, you can add:

Reviewed-by: Laurent Vivier <address@hidden>

Thanks,
Laurent



reply via email to

[Prev in Thread] Current Thread [Next in Thread]