diff --git a/src/unix/notbsd/linux/other/mod.rs b/src/unix/notbsd/linux/other/mod.rs
index c7f98735a6f9b0239038c19c0cbca9de69d15db3..8a643768de0c8e18693773e0d722fe75d168fa4f 100644
--- a/src/unix/notbsd/linux/other/mod.rs
+++ b/src/unix/notbsd/linux/other/mod.rs
@@ -61,19 +61,6 @@ s! {
         _align: [usize; 0],
     }
 
-    impl siginfo_t {
-        pub unsafe fn si_addr(&self) -> *mut ::c_void {
-            #[repr(C)]
-            struct siginfo_sigfault {
-                _si_signo: ::c_int,
-                _si_errno: ::c_int,
-                _si_code: ::c_int,
-                si_addr: *mut ::c_void
-            }
-            (*(self as *const siginfo_t as *const siginfo_sigfault)).si_addr
-        }
-    }
-
     pub struct glob64_t {
         pub gl_pathc: ::size_t,
         pub gl_pathv: *mut *mut ::c_char,
@@ -213,6 +200,19 @@ s! {
     }
 }
 
+impl siginfo_t {
+    pub unsafe fn si_addr(&self) -> *mut ::c_void {
+        #[repr(C)]
+        struct siginfo_sigfault {
+            _si_signo: ::c_int,
+            _si_errno: ::c_int,
+            _si_code: ::c_int,
+            si_addr: *mut ::c_void
+        }
+        (*(self as *const siginfo_t as *const siginfo_sigfault)).si_addr
+    }
+}
+
 s_no_extra_traits! {
     pub struct utmpx {
         pub ut_type: ::c_short,