1
- use nix:: Error ;
2
- use nix:: libc:: { c_void, size_t} ;
3
1
use nix:: sys:: mman:: { mmap, MapFlags , ProtFlags } ;
4
2
5
- #[ cfg( target_os = "linux" ) ]
6
- use nix:: sys:: mman:: { mremap, MRemapFlags } ;
7
-
8
3
#[ test]
9
4
fn test_mmap_anonymous ( ) {
10
- let ref mut byte = unsafe {
5
+ unsafe {
11
6
let ptr = mmap ( std:: ptr:: null_mut ( ) , 1 ,
12
7
ProtFlags :: PROT_READ | ProtFlags :: PROT_WRITE ,
13
8
MapFlags :: MAP_PRIVATE | MapFlags :: MAP_ANONYMOUS , -1 , 0 )
14
- . unwrap ( ) ;
15
- * ( ptr as * mut u8 )
16
- } ;
17
- assert_eq ! ( * byte, 0x00u8 ) ;
18
- * byte = 0xffu8 ;
19
- assert_eq ! ( * byte, 0xffu8 ) ;
9
+ . unwrap ( ) as * mut u8 ;
10
+ assert_eq ! ( * ptr, 0x00u8 ) ;
11
+ * ptr = 0xffu8 ;
12
+ assert_eq ! ( * ptr, 0xffu8 ) ;
13
+ }
20
14
}
21
15
22
16
#[ test]
23
17
#[ cfg( any( target_os = "linux" , target_os = "netbsd" ) ) ]
24
18
fn test_mremap_grow ( ) {
19
+ use nix:: sys:: mman:: { mremap, MRemapFlags } ;
20
+ use nix:: libc:: { c_void, size_t} ;
21
+
25
22
const ONE_K : size_t = 1024 ;
26
23
let slice : & mut [ u8 ] = unsafe {
27
24
let mem = mmap ( std:: ptr:: null_mut ( ) , ONE_K ,
@@ -58,6 +55,9 @@ fn test_mremap_grow() {
58
55
#[ test]
59
56
#[ cfg( any( target_os = "linux" , target_os = "netbsd" ) ) ]
60
57
fn test_mremap_shrink ( ) {
58
+ use nix:: sys:: mman:: { mremap, MRemapFlags } ;
59
+ use nix:: libc:: { c_void, size_t} ;
60
+
61
61
const ONE_K : size_t = 1024 ;
62
62
let slice : & mut [ u8 ] = unsafe {
63
63
let mem = mmap ( std:: ptr:: null_mut ( ) , 10 * ONE_K ,
@@ -77,9 +77,9 @@ fn test_mremap_shrink() {
77
77
. unwrap ( ) ;
78
78
// Since we didn't supply MREMAP_MAYMOVE, the address should be the
79
79
// same.
80
- #[ cfg( target_os = "linux " ) ]
80
+ #[ cfg( target_os = "netbsd " ) ]
81
81
let mem = mremap ( slice. as_mut_ptr ( ) as * mut c_void , 10 * ONE_K , ONE_K ,
82
- MRemapFlags :: MAP_FIXED ) , None )
82
+ MRemapFlags :: MAP_FIXED , None )
83
83
. unwrap ( ) ;
84
84
assert_eq ! ( mem, slice. as_mut_ptr( ) as * mut c_void) ;
85
85
std:: slice:: from_raw_parts_mut ( mem as * mut u8 , ONE_K )
0 commit comments