Sync in latest upstream system call definitions.

Futex object scopes have been renamed from using their own constants to
simply reusing the existing CLOUDABI_MAP_{PRIVATE,SHARED} flags, as they
are more accurate in this context.
This commit is contained in:
Ed Schouten 2015-07-27 10:04:06 +00:00
parent 71d80fbaf3
commit f4c06d124f
3 changed files with 6 additions and 11 deletions

View File

@ -21,7 +21,7 @@
2 AUE_NULL STD { void cloudabi_sys_condvar_signal( \
cloudabi_condvar_t *condvar, \
cloudabi_futexscope_t scope, \
cloudabi_mflags_t scope, \
cloudabi_nthreads_t nwaiters); }
3 AUE_NULL STD { void cloudabi_sys_fd_close( \
@ -132,7 +132,7 @@
31 AUE_NULL STD { void cloudabi_sys_lock_unlock( \
cloudabi_lock_t *lock, \
cloudabi_futexscope_t scope); }
cloudabi_mflags_t scope); }
32 AUE_NULL STD { void cloudabi_sys_mem_advise( \
void *addr, size_t len, \
@ -209,6 +209,6 @@
cloudabi64_threadattr_t *attr); }
54 AUE_NULL STD { void cloudabi_sys_thread_exit( \
cloudabi_lock_t *lock, \
cloudabi_futexscope_t scope); }
cloudabi_mflags_t scope); }
55 AUE_NULL STD { void cloudabi_sys_thread_tcb_set(void *tcb); }
56 AUE_NULL STD { void cloudabi_sys_thread_yield(); }

View File

@ -193,8 +193,8 @@ typedef struct {
struct {
MEMBER(PTR(_Atomic(cloudabi_condvar_t))) condvar;
MEMBER(PTR(_Atomic(cloudabi_lock_t))) lock;
MEMBER(cloudabi_futexscope_t) condvar_scope;
MEMBER(cloudabi_futexscope_t) lock_scope;
MEMBER(cloudabi_mflags_t) condvar_scope;
MEMBER(cloudabi_mflags_t) lock_scope;
} condvar;
// CLOUDABI_EVENTTYPE_FD_READ and CLOUDABI_EVENTTYPE_FD_WRITE:
@ -208,7 +208,7 @@ typedef struct {
// and acquire a read or write lock.
struct {
MEMBER(PTR(_Atomic(cloudabi_lock_t))) lock;
MEMBER(cloudabi_futexscope_t) lock_scope;
MEMBER(cloudabi_mflags_t) lock_scope;
} lock;
// CLOUDABI_EVENTTYPE_PROC_TERMINATE: Wait for a process to terminate.

View File

@ -189,10 +189,6 @@
#define CLOUDABI_FILETYPE_SOCKET_STREAM 0x82
#define CLOUDABI_FILETYPE_SYMBOLIC_LINK 0x90
// Futex object scopes.
#define CLOUDABI_FUTEXSCOPE_GLOBAL 1
#define CLOUDABI_FUTEXSCOPE_PROCESS_LOCAL 2
// Read-write lock related constants.
#define CLOUDABI_LOCK_UNLOCKED 0 // Lock is unlocked.
#define CLOUDABI_LOCK_WRLOCKED 0x40000000 // Lock is write locked.
@ -354,7 +350,6 @@ typedef int64_t cloudabi_filedelta_t; // lseek().
typedef uint64_t cloudabi_filesize_t; // ftruncate(), struct stat::st_size.
typedef uint8_t cloudabi_filetype_t; // struct stat::st_mode.
typedef uint16_t cloudabi_fsflags_t; // file_stat_put().
typedef uint8_t cloudabi_futexscope_t; // Scope of lock or condition variable.
typedef uint64_t cloudabi_inode_t; // struct stat::st_ino.
typedef uint32_t cloudabi_linkcount_t; // struct stat::st_nlink.
typedef uint32_t cloudabi_lock_t; // pthread_{mutex,rwlock}_*().