]> Cypherpunks repositories - gostls13.git/commitdiff
runtime/pprof: fix proto tests on NetBSD
authorElias Naur <elias.naur@gmail.com>
Sat, 25 Mar 2017 13:54:28 +0000 (14:54 +0100)
committerElias Naur <elias.naur@gmail.com>
Mon, 27 Mar 2017 08:55:14 +0000 (08:55 +0000)
The proto_test tests are failing on NetBSD:

https://build.golang.org/log/a3a577144ac48c6ef8e384ce6a700ad30549fb78

the failures seem similar to previous failures on Android:

https://build.golang.org/log/b5786e0cd6d5941dc37b6a50be5172f6b99e22f0

The Android failures where fixed by CL 37896. This CL is an attempt
to fix the NetBSD failures with a similar fix.

Change-Id: I3834afa5b32303ca226e6a31f0f321f66fef9a3f
Reviewed-on: https://go-review.googlesource.com/38637
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/runtime/pprof/proto_test.go

index 7b0fa95d714d468fd1e0908117d0ad65d46e38a2..2f104191474eaafaa0ca12dcd76b64f21137d605 100644 (file)
@@ -70,7 +70,8 @@ func f2() { f2() }
 // testPCs returns two PCs and two corresponding memory mappings
 // to use in test profiles.
 func testPCs(t *testing.T) (addr1, addr2 uint64, map1, map2 *profile.Mapping) {
-       if runtime.GOOS == "linux" || runtime.GOOS == "android" {
+       switch runtime.GOOS {
+       case "linux", "android", "netbsd":
                // Figure out two addresses from /proc/self/maps.
                mmap, err := ioutil.ReadFile("/proc/self/maps")
                if err != nil {
@@ -91,7 +92,7 @@ func testPCs(t *testing.T) (addr1, addr2 uint64, map1, map2 *profile.Mapping) {
                addr2 = mprof.Mapping[1].Start
                map2 = mprof.Mapping[1]
                map2.BuildID, _ = elfBuildID(map2.File)
-       } else {
+       default:
                addr1 = uint64(funcPC(f1))
                addr2 = uint64(funcPC(f2))
        }