}
                stack := strings.TrimSpace(sl[1])
                if stack == "" ||
+                       strings.Contains(stack, "os/signal.signal_recv") ||
                        strings.Contains(stack, "created by net.startServer") ||
                        strings.Contains(stack, "created by testing.RunTests") ||
                        strings.Contains(stack, "closeWriteAndWait") ||
 
 // Verify the other tests didn't leave any goroutines running.
 func goroutineLeaked() bool {
-       if testing.Short() {
-               // not counting goroutines for leakage in -short mode
+       if testing.Short() || runningBenchmarks() {
+               // Don't worry about goroutine leaks in -short mode or in
+               // benchmark mode. Too distracting when there are false positives.
                return false
        }
 
        }
 }
 
+func runningBenchmarks() bool {
+       for i, arg := range os.Args {
+               if strings.HasPrefix(arg, "-test.bench=") && !strings.HasSuffix(arg, "=") {
+                       return true
+               }
+               if arg == "-test.bench" && i < len(os.Args)-1 && os.Args[i+1] != "" {
+                       return true
+               }
+       }
+       return false
+}
+
 func afterTest(t testing.TB) {
        http.DefaultTransport.(*http.Transport).CloseIdleConnections()
        if testing.Short() {