From 15c9447e5d6c3d6164f1bc8869ef5980765d2027 Mon Sep 17 00:00:00 2001
From: Kelvin Ly <kelvin.ly1618@gmail.com>
Date: Fri, 21 Apr 2017 18:32:16 -0400
Subject: [PATCH] Fix more libc-test fails for mips-unknown-linux-uclibc

---
 src/unix/notbsd/linux/mips/mips32.rs | 12 +++++++++---
 src/unix/notbsd/linux/mips/mod.rs    |  3 ---
 src/unix/notbsd/linux/mod.rs         |  2 ++
 3 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/src/unix/notbsd/linux/mips/mips32.rs b/src/unix/notbsd/linux/mips/mips32.rs
index dc868478..d632dd06 100644
--- a/src/unix/notbsd/linux/mips/mips32.rs
+++ b/src/unix/notbsd/linux/mips/mips32.rs
@@ -37,7 +37,10 @@ s! {
         pub st_dev: ::c_ulong,
         #[cfg(target_env = "uclibc")]
         pub st_dev: ::dev_t,
+        #[cfg(not(target_env = "uclibc"))]
         st_pad1: [::c_long; 3],
+        #[cfg(target_env = "uclibc")]
+        st_pad1: [::c_long; 2],
         pub st_ino: ::ino_t,
         pub st_mode: ::mode_t,
         pub st_nlink: ::nlink_t,
@@ -69,7 +72,10 @@ s! {
         pub st_dev: ::c_ulong,
         #[cfg(target_env = "uclibc")]
         pub st_dev: ::dev_t,
+        #[cfg(not(target_env = "uclibc"))]
         st_pad1: [::c_long; 3],
+        #[cfg(target_env = "uclibc")]
+        st_pad1: [::c_long; 2],
         pub st_ino: ::ino64_t,
         pub st_mode: ::mode_t,
         pub st_nlink: ::nlink_t,
@@ -100,7 +106,7 @@ s! {
     pub struct sigaction {
         #[cfg(not(target_env = "uclibc"))]
         pub sa_flags: ::c_int,
-        #[cfg(not(target_env = "uclibc"))]
+        #[cfg(target_env = "uclibc")]
         pub sa_flags: ::c_uint,
         pub sa_sigaction: ::sighandler_t,
         pub sa_mask: sigset_t,
@@ -213,9 +219,9 @@ s! {
         pub msg_name: *mut ::c_void,
         pub msg_namelen: ::socklen_t,
         pub msg_iov: *mut ::iovec,
-        #[cfg(target_env = "uclib")]
+        #[cfg(not(target_env = "uclibc"))]
         pub msg_iovlen: ::size_t,
-        #[cfg(target_env = "uclib")]
+        #[cfg(target_env = "uclibc")]
         pub msg_iovlen: ::c_int,
         pub msg_control: *mut ::c_void,
         pub msg_controllen: ::size_t,
diff --git a/src/unix/notbsd/linux/mips/mod.rs b/src/unix/notbsd/linux/mips/mod.rs
index e42d9506..3d87ad55 100644
--- a/src/unix/notbsd/linux/mips/mod.rs
+++ b/src/unix/notbsd/linux/mips/mod.rs
@@ -377,10 +377,7 @@ pub const PTRACE_SETREGS: ::c_uint = 13;
 
 pub const MAP_HUGETLB: ::c_int = 0x080000;
 
-#[cfg(not(target_env = "uclibc"))]
 pub const EFD_NONBLOCK: ::c_int = 0x80;
-#[cfg(target_env = "uclibc")]
-pub const EFD_NONBLOCK: ::c_int = 0x800;
 
 pub const F_GETLK: ::c_int = 14;
 pub const F_GETOWN: ::c_int = 23;
diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs
index 1d43acb7..dc3ad1ac 100644
--- a/src/unix/notbsd/linux/mod.rs
+++ b/src/unix/notbsd/linux/mod.rs
@@ -164,6 +164,8 @@ s! {
         pub dqb_bsoftlimit: ::uint32_t,
         #[cfg(not(target_env = "uclibc"))]
         pub dqb_curspace: ::uint64_t,
+        #[cfg(target_env = "uclibc")]
+        pub dqb_curblocks: ::uint32_t,
         #[cfg(not(target_env = "uclibc"))]
         pub dqb_ihardlimit: ::uint64_t,
         #[cfg(target_env = "uclibc")]
-- 
GitLab