parisc: Drop architecture-specific ENOTSUP define
authorHelge Deller <deller@gmx.de>
Sun, 1 Jul 2018 16:18:15 +0000 (18:18 +0200)
committerHelge Deller <deller@gmx.de>
Mon, 13 Aug 2018 07:30:41 +0000 (09:30 +0200)
parisc is the only Linux architecture which has defined a value for ENOTSUP.
All other architectures #define ENOTSUP as EOPNOTSUPP in their libc headers.

Having an own value for ENOTSUP which is different than EOPNOTSUPP often gives
problems with userspace programs which expect both to be the same.  One such
example is a build error in the libuv package, as can be seen in
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=900237.

Since we dropped HP-UX support, there is no real benefit in keeping an own
value for ENOTSUP. This patch drops the parisc value for ENOTSUP from the
kernel sources. glibc needs no patch, it reuses the exported headers.

Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/include/uapi/asm/errno.h
kernel/time/posix-timers.c
tools/arch/parisc/include/uapi/asm/errno.h

index fc0df353ff0da5f8bd6deb8d69f6aa55e631dc7a..87245c584784ec1f0f877fbe0be54ee136df5456 100644 (file)
 #define        ELOOP           249     /* Too many symbolic links encountered */
 #define        ENOSYS          251     /* Function not implemented */
 
-#define ENOTSUP                252     /* Function not implemented (POSIX.4 / HPUX) */
 #define ECANCELLED     253     /* aio request was canceled before complete (POSIX.4 / HPUX) */
 #define ECANCELED      ECANCELLED      /* SuSv3 and Solaris wants one 'L' */
 
index e08ce3f27447390846394e55a11cd4e9c029bb37..66321cbdf90cd5b94e3db7390a4a19866c05b0c0 100644 (file)
@@ -85,15 +85,6 @@ static const struct k_clock clock_realtime, clock_monotonic;
 #error "SIGEV_THREAD_ID must not share bit with other SIGEV values!"
 #endif
 
-/*
- * parisc wants ENOTSUP instead of EOPNOTSUPP
- */
-#ifndef ENOTSUP
-# define ENANOSLEEP_NOTSUP EOPNOTSUPP
-#else
-# define ENANOSLEEP_NOTSUP ENOTSUP
-#endif
-
 /*
  * The timer ID is turned into a timer address by idr_find().
  * Verifying a valid ID consists of:
@@ -1220,7 +1211,7 @@ SYSCALL_DEFINE4(clock_nanosleep, const clockid_t, which_clock, int, flags,
        if (!kc)
                return -EINVAL;
        if (!kc->nsleep)
-               return -ENANOSLEEP_NOTSUP;
+               return -EOPNOTSUPP;
 
        if (get_timespec64(&t, rqtp))
                return -EFAULT;
@@ -1247,7 +1238,7 @@ COMPAT_SYSCALL_DEFINE4(clock_nanosleep, clockid_t, which_clock, int, flags,
        if (!kc)
                return -EINVAL;
        if (!kc->nsleep)
-               return -ENANOSLEEP_NOTSUP;
+               return -EOPNOTSUPP;
 
        if (compat_get_timespec64(&t, rqtp))
                return -EFAULT;
index fc0df353ff0da5f8bd6deb8d69f6aa55e631dc7a..87245c584784ec1f0f877fbe0be54ee136df5456 100644 (file)
 #define        ELOOP           249     /* Too many symbolic links encountered */
 #define        ENOSYS          251     /* Function not implemented */
 
-#define ENOTSUP                252     /* Function not implemented (POSIX.4 / HPUX) */
 #define ECANCELLED     253     /* aio request was canceled before complete (POSIX.4 / HPUX) */
 #define ECANCELED      ECANCELLED      /* SuSv3 and Solaris wants one 'L' */