Skip to content

DATA RACE: s.successDuration unsafely accessed #10991

@aanm

Description

@aanm

source 1000f70

2020-04-15T08:44:11.613138549Z WARNING: DATA RACE
2020-04-15T08:44:11.613145716Z Write at 0x00c0018b6218 by goroutine 39:
2020-04-15T08:44:11.613150196Z   github.com/cilium/cilium/pkg/spanstat.(*SpanStat).End()
2020-04-15T08:44:11.613154666Z       /go/src/github.com/cilium/cilium/pkg/spanstat/spanstat.go:62 +0x1f7
2020-04-15T08:44:11.613159211Z   github.com/cilium/cilium/pkg/eventqueue.(*EventQueue).Enqueue()
2020-04-15T08:44:11.613163452Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:218 +0x2f9
2020-04-15T08:44:11.613167802Z   github.com/cilium/cilium/daemon/cmd.(*Daemon).policyAdd()
2020-04-15T08:44:11.613172368Z       /go/src/github.com/cilium/cilium/daemon/cmd/policy.go:418 +0x136b
2020-04-15T08:44:11.613188251Z   github.com/cilium/cilium/daemon/cmd.(*PolicyAddEvent).Handle()
2020-04-15T08:44:11.613194209Z       /go/src/github.com/cilium/cilium/daemon/cmd/policy.go:214 +0xc9
2020-04-15T08:44:11.613199145Z   github.com/cilium/cilium/pkg/eventqueue.(*EventQueue).Run.func1()
2020-04-15T08:44:11.613203145Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:260 +0x2e1
2020-04-15T08:44:11.613207659Z   sync.(*Once).doSlow()
2020-04-15T08:44:11.613212189Z       /usr/local/go/src/sync/once.go:66 +0x103
2020-04-15T08:44:11.613216085Z   sync.(*Once).Do()
2020-04-15T08:44:11.613220435Z       /usr/local/go/src/sync/once.go:57 +0x68
2020-04-15T08:44:11.613225079Z 
2020-04-15T08:44:11.613237571Z Previous read at 0x00c0018b6218 by goroutine 40:
2020-04-15T08:44:11.61324264Z   github.com/cilium/cilium/pkg/spanstat.(*SpanStat).Total()
2020-04-15T08:44:11.61324717Z       /go/src/github.com/cilium/cilium/pkg/spanstat/spanstat.go:74 +0x413
2020-04-15T08:44:11.613251818Z   github.com/cilium/cilium/pkg/eventqueue.(*Event).printStats()
2020-04-15T08:44:11.613256032Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:228 +0x443
2020-04-15T08:44:11.613259982Z   github.com/cilium/cilium/pkg/eventqueue.(*EventQueue).Run.func1()
2020-04-15T08:44:11.613264265Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:265 +0x319
2020-04-15T08:44:11.613325986Z   sync.(*Once).doSlow()
2020-04-15T08:44:11.613336026Z       /usr/local/go/src/sync/once.go:66 +0x103
2020-04-15T08:44:11.613341216Z   sync.(*Once).Do()
2020-04-15T08:44:11.613345551Z       /usr/local/go/src/sync/once.go:57 +0x68
2020-04-15T08:44:11.613349736Z 
2020-04-15T08:44:11.613370021Z Goroutine 39 (running) created at:
2020-04-15T08:44:11.613376918Z   github.com/cilium/cilium/pkg/eventqueue.(*EventQueue).Run()
2020-04-15T08:44:11.613402264Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:248 +0xe6
2020-04-15T08:44:11.61340812Z   github.com/cilium/cilium/pkg/policy.NewPolicyRepository()
2020-04-15T08:44:11.613412797Z       /go/src/github.com/cilium/cilium/pkg/policy/repository.go:144 +0x11d
2020-04-15T08:44:11.61342689Z   github.com/cilium/cilium/daemon/cmd.NewDaemon()
2020-04-15T08:44:11.61343206Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon.go:324 +0x1270
2020-04-15T08:44:11.613436497Z   github.com/cilium/cilium/daemon/cmd.runDaemon()
2020-04-15T08:44:11.61344109Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:1194 +0x345
2020-04-15T08:44:11.613445349Z   github.com/cilium/cilium/daemon/cmd.glob..func1()
2020-04-15T08:44:11.613449617Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:107 +0x108
2020-04-15T08:44:11.613454179Z   github.com/cilium/cilium/daemon/cmd.initEnv()
2020-04-15T08:44:11.613458325Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:1073 +0x2c56
2020-04-15T08:44:11.61346933Z   github.com/cilium/cilium/daemon/cmd.glob..func1()
2020-04-15T08:44:11.613474189Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:105 +0xee
2020-04-15T08:44:11.613478767Z   github.com/spf13/cobra.(*Command).execute()
2020-04-15T08:44:11.613483397Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:830 +0x8e0
2020-04-15T08:44:11.613487469Z   github.com/spf13/cobra.(*Command).ExecuteC()
2020-04-15T08:44:11.613494948Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:914 +0x41a
2020-04-15T08:44:11.613507407Z   github.com/spf13/cobra.(*Command).Execute()
2020-04-15T08:44:11.613512429Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:864 +0x251
2020-04-15T08:44:11.613516983Z   github.com/cilium/cilium/daemon/cmd.Execute()
2020-04-15T08:44:11.613521543Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:138 +0x232
2020-04-15T08:44:11.613525852Z   main.main()
2020-04-15T08:44:11.613530274Z       /go/src/github.com/cilium/cilium/daemon/main.go:22 +0x2f
2020-04-15T08:44:11.613540876Z 
2020-04-15T08:44:11.613546289Z Goroutine 40 (running) created at:
2020-04-15T08:44:11.613556276Z   github.com/cilium/cilium/pkg/eventqueue.(*EventQueue).Run()
2020-04-15T08:44:11.613561584Z       /go/src/github.com/cilium/cilium/pkg/eventqueue/eventqueue.go:248 +0xe6
2020-04-15T08:44:11.613571198Z   github.com/cilium/cilium/pkg/policy.NewPolicyRepository()
2020-04-15T08:44:11.613576779Z       /go/src/github.com/cilium/cilium/pkg/policy/repository.go:145 +0x12b
2020-04-15T08:44:11.613588524Z   github.com/cilium/cilium/daemon/cmd.NewDaemon()
2020-04-15T08:44:11.613593568Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon.go:324 +0x1270
2020-04-15T08:44:11.613603268Z   github.com/cilium/cilium/daemon/cmd.runDaemon()
2020-04-15T08:44:11.613607791Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:1194 +0x345
2020-04-15T08:44:11.613618928Z   github.com/cilium/cilium/daemon/cmd.glob..func1()
2020-04-15T08:44:11.613623881Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:107 +0x108
2020-04-15T08:44:11.613628537Z   github.com/cilium/cilium/daemon/cmd.initEnv()
2020-04-15T08:44:11.613632827Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:1073 +0x2c56
2020-04-15T08:44:11.613644712Z   github.com/cilium/cilium/daemon/cmd.glob..func1()
2020-04-15T08:44:11.613649626Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:105 +0xee
2020-04-15T08:44:11.613654005Z   github.com/spf13/cobra.(*Command).execute()
2020-04-15T08:44:11.613658542Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:830 +0x8e0
2020-04-15T08:44:11.613667995Z   github.com/spf13/cobra.(*Command).ExecuteC()
2020-04-15T08:44:11.613673415Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:914 +0x41a
2020-04-15T08:44:11.613685527Z   github.com/spf13/cobra.(*Command).Execute()
2020-04-15T08:44:11.613690492Z       /go/src/github.com/cilium/cilium/vendor/github.com/spf13/cobra/command.go:864 +0x251
2020-04-15T08:44:11.613695027Z   github.com/cilium/cilium/daemon/cmd.Execute()
2020-04-15T08:44:11.613699601Z       /go/src/github.com/cilium/cilium/daemon/cmd/daemon_main.go:138 +0x232
2020-04-15T08:44:11.613711125Z   main.main()
2020-04-15T08:44:11.613716111Z       /go/src/github.com/cilium/cilium/daemon/main.go:22 +0x2f

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugThis is a bug in the Cilium logic.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions