提交 cac7d837 编写于 作者: R Rich Felker

fix and cleanup suseconds_t/timeval stuff (broken on 64-bit)

trash in the upper 32 bits was making the kernel sleep forever in
select on 64-bit systems.
上级 91e836fd
...@@ -55,7 +55,7 @@ TYPEDEF unsigned long uintptr_t; ...@@ -55,7 +55,7 @@ TYPEDEF unsigned long uintptr_t;
TYPEDEF long time_t; TYPEDEF long time_t;
TYPEDEF long suseconds_t; TYPEDEF long suseconds_t;
STRUCT timeval { time_t tv_sec; int tv_usec; }; STRUCT timeval { time_t tv_sec; long tv_usec; };
STRUCT timespec { time_t tv_sec; long tv_nsec; }; STRUCT timespec { time_t tv_sec; long tv_nsec; };
TYPEDEF int pid_t; TYPEDEF int pid_t;
......
...@@ -6,6 +6,7 @@ extern "C" { ...@@ -6,6 +6,7 @@ extern "C" {
#define __NEED_size_t #define __NEED_size_t
#define __NEED_time_t #define __NEED_time_t
#define __NEED_suseconds_t
#define __NEED_struct_timeval #define __NEED_struct_timeval
#define __NEED_struct_timespec #define __NEED_struct_timespec
#define __NEED_sigset_t #define __NEED_sigset_t
......
...@@ -4,17 +4,8 @@ ...@@ -4,17 +4,8 @@
extern "C" { extern "C" {
#endif #endif
/* All symbols from select.h except pselect are required anyway... */
#include <sys/select.h> #include <sys/select.h>
#define __NEED_time_t
#define __NEED_suseconds_t
#define __NEED_struct_timeval
#include <bits/alltypes.h>
int gettimeofday (struct timeval *, void *); int gettimeofday (struct timeval *, void *);
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册