8
8
package unix_test
9
9
10
10
import (
11
- "golang.org/x/sys/unix"
12
11
"testing"
12
+
13
+ "golang.org/x/sys/unix"
13
14
)
14
15
15
16
func TestMremap (t * testing.T ) {
16
- b , err := unix .Mmap (- 1 , 0 , unix .Getpagesize ()* 2 , unix .PROT_NONE , unix .MAP_ANON | unix .MAP_PRIVATE )
17
+ b , err := unix .Mmap (- 1 , 0 , unix .Getpagesize (), unix .PROT_NONE , unix .MAP_ANON | unix .MAP_PRIVATE )
17
18
if err != nil {
18
19
t .Fatalf ("Mmap: %v" , err )
19
20
}
@@ -22,22 +23,23 @@ func TestMremap(t *testing.T) {
22
23
}
23
24
24
25
b [0 ] = 42
25
- if err := unix .Msync (b , unix .MS_SYNC ); err != nil {
26
- t .Fatalf ("Msync: %v" , err )
27
- }
28
26
29
- bNew , err := unix .Mremap (b , unix .Getpagesize (), unix .MREMAP_MAYMOVE )
27
+ bNew , err := unix .Mremap (b , unix .Getpagesize ()* 2 , unix .MREMAP_MAYMOVE )
30
28
if err != nil {
31
29
t .Fatalf ("Mremap2: %v" , err )
32
30
}
31
+ b [unix .Getpagesize ()+ 1 ] = 84
33
32
34
33
if bNew [0 ] != 42 {
35
34
t .Fatal ("first element value was changed" )
36
35
}
37
- if len (bNew ) != unix .Getpagesize () {
36
+ if bNew [unix .Getpagesize ()+ 1 ] != 84 {
37
+ t .Fatalf ("element value in new memory space wasn't changed" )
38
+ }
39
+ if len (bNew ) != unix .Getpagesize ()* 2 {
38
40
t .Fatal ("new memory len not equal to specified len" )
39
41
}
40
- if cap (bNew ) != unix .Getpagesize () {
42
+ if cap (bNew ) != unix .Getpagesize ()* 2 {
41
43
t .Fatal ("new memory cap not equal to specified len" )
42
44
}
43
45
}
0 commit comments