[PATCH] Simplify PPC tc[gs]etattr
Franz Sirl
Franz.Sirl-kernel@lauterbach.com
Mon Feb 17 18:01:00 GMT 2003
Hi,
now that both PPC32 and PPC64 have a working INLINE_SYSCALL, using
INLINE_SYSCALL for ioctl in linux/tc[gs]etattr.c lets us remove the PPC
files.
Franz.
* sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
* sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
-------------- next part --------------
Index: sysdeps/unix/sysv/linux/tcgetattr.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/tcgetattr.c,v
retrieving revision 1.6
diff -u -p -r1.6 tcgetattr.c
--- sysdeps/unix/sysv/linux/tcgetattr.c 6 Jul 2001 04:56:13 -0000 1.6
+++ sysdeps/unix/sysv/linux/tcgetattr.c 17 Feb 2003 17:49:56 -0000
@@ -36,7 +36,7 @@ __tcgetattr (fd, termios_p)
struct __kernel_termios k_termios;
int retval;
- retval = __ioctl (fd, TCGETS, &k_termios);
+ retval = INLINE_SYSCALL (ioctl, 3, fd, TCGETS, &k_termios);
termios_p->c_iflag = k_termios.c_iflag;
termios_p->c_oflag = k_termios.c_oflag;
Index: sysdeps/unix/sysv/linux/tcsetattr.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/tcsetattr.c,v
retrieving revision 1.11
diff -u -p -r1.11 tcsetattr.c
--- sysdeps/unix/sysv/linux/tcsetattr.c 13 Aug 2002 00:23:00 -0000 1.11
+++ sysdeps/unix/sysv/linux/tcsetattr.c 17 Feb 2003 17:49:56 -0000
@@ -87,14 +87,14 @@ tcsetattr (fd, optional_actions, termios
memcpy (&k_termios.c_cc[0], &termios_p->c_cc[0],
__KERNEL_NCCS * sizeof (cc_t));
- retval = __ioctl (fd, cmd, &k_termios);
+ retval = INLINE_SYSCALL (ioctl, 3, fd, cmd, &k_termios);
if (retval == 0 && cmd == TCSETS)
{
/* The Linux kernel has a bug which silently ignore the invalid
c_cflag on pty. We have to check it here. */
int save = errno;
- retval = __ioctl (fd, TCGETS, &k_termios);
+ retval = INLINE_SYSCALL (ioctl, 3, fd, TCGETS, &k_termios);
if (retval)
{
/* We cannot verify if the setting is ok. We don't return
--- sysdeps/unix/sysv/linux/powerpc/tcgetattr.c 2002-11-05 09:31:36.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-/* We must use the syscall directly since __ioctl does some extra work. */
-
-#include <sys/ioctl.h>
-
-#include <sysdep.h>
-#include <bp-checks.h>
-
-struct __kernel_termios;
-
-static inline int
-tcgetattr_ioctl (int fd, unsigned long int request,
- struct __kernel_termios *termios_p)
-{
- return INLINE_SYSCALL (ioctl, 3, fd, request, CHECK_1 (termios_p));
-}
-
-#define __ioctl tcgetattr_ioctl
-
-#include <sysdeps/unix/sysv/linux/tcgetattr.c>
--- sysdeps/unix/sysv/linux/powerpc/tcsetattr.c 2002-11-05 09:31:36.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-/* We must use the syscall directly since __ioctl does some extra work. */
-
-#include <sys/ioctl.h>
-
-#include <sysdep.h>
-#include <bp-checks.h>
-
-struct __kernel_termios;
-
-static inline int
-tcsetattr_ioctl (int fd, unsigned long int request,
- const struct __kernel_termios *termios_p)
-{
- return INLINE_SYSCALL (ioctl, 3, fd, request, CHECK_1 (termios_p));
-}
-
-#define __ioctl tcsetattr_ioctl
-
-#include <sysdeps/unix/sysv/linux/tcsetattr.c>
More information about the Libc-alpha
mailing list