arch: sparc: Override struct __kernel_old_timeval

struct __kernel_old_timeval is supposed to have the same
layout as struct timeval. But, it was inadvarently missed
that __kernel_suseconds has a different definition for
sparc64.
Provide an asm-specific override that fixes it.

Reported-by: Arnd Bergmann <arnd@arndb.de>
Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Cc: sparclinux@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Deepa Dinamani 2019-02-02 07:34:47 -08:00 committed by David S. Miller
parent 7f1bc6e95d
commit bcb3fc3247
2 changed files with 12 additions and 0 deletions

View File

@ -19,6 +19,16 @@ typedef unsigned short __kernel_old_gid_t;
typedef int __kernel_suseconds_t; typedef int __kernel_suseconds_t;
#define __kernel_suseconds_t __kernel_suseconds_t #define __kernel_suseconds_t __kernel_suseconds_t
typedef long __kernel_long_t;
typedef unsigned long __kernel_ulong_t;
#define __kernel_long_t __kernel_long_t
struct __kernel_old_timeval {
__kernel_long_t tv_sec;
__kernel_suseconds_t tv_usec;
};
#define __kernel_old_timeval __kernel_old_timeval
#else #else
/* sparc 32 bit */ /* sparc 32 bit */

View File

@ -63,10 +63,12 @@ struct __kernel_itimerspec {
* here, this is probably because it is not y2038 safe and needs to * here, this is probably because it is not y2038 safe and needs to
* be changed to use another interface. * be changed to use another interface.
*/ */
#ifndef __kernel_old_timeval
struct __kernel_old_timeval { struct __kernel_old_timeval {
__kernel_long_t tv_sec; __kernel_long_t tv_sec;
__kernel_long_t tv_usec; __kernel_long_t tv_usec;
}; };
#endif
/* /*
* The IDs of the various system clocks (for POSIX.1b interval timers): * The IDs of the various system clocks (for POSIX.1b interval timers):