summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-05-16 20:51:07 +0000
committerbors <bors@rust-lang.org>2019-05-16 20:51:07 +0000
commit6e3c6752f623b603b8e85d5976c127efaad9445d (patch)
tree880b15de9bf09f56a774f36c9182cf3091e1d91d
parent8b14a7e95bd4f13707a1c4383bdb54222921098f (diff)
parent72463fc155b39b5d4bc964fa26d70851ec04e87c (diff)
downloadrust-libc-6e3c6752f623b603b8e85d5976c127efaad9445d.tar.gz
Auto merge of #1336 - faern:add-futex-consts, r=gnzlbg
Add futex constants Adding some Futex constants. To be used in `parking_lot`. See https://github.com/faern/parking_lot/pull/1/files#r283110797
-rw-r--r--libc-test/build.rs2
-rw-r--r--src/unix/notbsd/android/mod.rs19
-rw-r--r--src/unix/notbsd/linux/mod.rs19
3 files changed, 40 insertions, 0 deletions
diff --git a/libc-test/build.rs b/libc-test/build.rs
index 4ff6b3a503..ec68c53afa 100644
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -1245,6 +1245,7 @@ fn test_android(target: &str) {
"ifaddrs.h",
"limits.h",
"linux/dccp.h",
+ "linux/futex.h",
"linux/fs.h",
"linux/genetlink.h",
"linux/if_alg.h",
@@ -2353,6 +2354,7 @@ fn test_linux(target: &str) {
headers! {
cfg:
"linux/falloc.h",
+ "linux/futex.h",
"linux/fs.h",
"linux/genetlink.h",
"linux/if_alg.h",
diff --git a/src/unix/notbsd/android/mod.rs b/src/unix/notbsd/android/mod.rs
index 179893e517..a430b1a00d 100644
--- a/src/unix/notbsd/android/mod.rs
+++ b/src/unix/notbsd/android/mod.rs
@@ -1839,6 +1839,25 @@ pub const IN_ALL_EVENTS: ::uint32_t = (
pub const IN_CLOEXEC: ::c_int = O_CLOEXEC;
pub const IN_NONBLOCK: ::c_int = O_NONBLOCK;
+pub const FUTEX_WAIT: ::c_int = 0;
+pub const FUTEX_WAKE: ::c_int = 1;
+pub const FUTEX_FD: ::c_int = 2;
+pub const FUTEX_REQUEUE: ::c_int = 3;
+pub const FUTEX_CMP_REQUEUE: ::c_int = 4;
+pub const FUTEX_WAKE_OP: ::c_int = 5;
+pub const FUTEX_LOCK_PI: ::c_int = 6;
+pub const FUTEX_UNLOCK_PI: ::c_int = 7;
+pub const FUTEX_TRYLOCK_PI: ::c_int = 8;
+pub const FUTEX_WAIT_BITSET: ::c_int = 9;
+pub const FUTEX_WAKE_BITSET: ::c_int = 10;
+pub const FUTEX_WAIT_REQUEUE_PI: ::c_int = 11;
+pub const FUTEX_CMP_REQUEUE_PI: ::c_int = 12;
+
+pub const FUTEX_PRIVATE_FLAG: ::c_int = 128;
+pub const FUTEX_CLOCK_REALTIME: ::c_int = 256;
+pub const FUTEX_CMD_MASK: ::c_int =
+ !(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME);
+
f! {
pub fn CMSG_NXTHDR(mhdr: *const msghdr,
cmsg: *const cmsghdr) -> *mut cmsghdr {
diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs
index 3d9ccada03..2419a41d4c 100644
--- a/src/unix/notbsd/linux/mod.rs
+++ b/src/unix/notbsd/linux/mod.rs
@@ -1849,6 +1849,25 @@ pub const IN_ALL_EVENTS: ::uint32_t = (
pub const IN_CLOEXEC: ::c_int = O_CLOEXEC;
pub const IN_NONBLOCK: ::c_int = O_NONBLOCK;
+pub const FUTEX_WAIT: ::c_int = 0;
+pub const FUTEX_WAKE: ::c_int = 1;
+pub const FUTEX_FD: ::c_int = 2;
+pub const FUTEX_REQUEUE: ::c_int = 3;
+pub const FUTEX_CMP_REQUEUE: ::c_int = 4;
+pub const FUTEX_WAKE_OP: ::c_int = 5;
+pub const FUTEX_LOCK_PI: ::c_int = 6;
+pub const FUTEX_UNLOCK_PI: ::c_int = 7;
+pub const FUTEX_TRYLOCK_PI: ::c_int = 8;
+pub const FUTEX_WAIT_BITSET: ::c_int = 9;
+pub const FUTEX_WAKE_BITSET: ::c_int = 10;
+pub const FUTEX_WAIT_REQUEUE_PI: ::c_int = 11;
+pub const FUTEX_CMP_REQUEUE_PI: ::c_int = 12;
+
+pub const FUTEX_PRIVATE_FLAG: ::c_int = 128;
+pub const FUTEX_CLOCK_REALTIME: ::c_int = 256;
+pub const FUTEX_CMD_MASK: ::c_int =
+ !(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME);
+
f! {
pub fn CMSG_NXTHDR(mhdr: *const msghdr,
cmsg: *const cmsghdr) -> *mut cmsghdr {