Open
Description
Description
A termination might close channels in the middle of engine processing,
panic: close of closed channel
goroutine 99 [running]:
[github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).consumeSources(0xc0036201a0](http://github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).consumeSources(0xc0036201a0), {0x45e6548, 0xc00362c3c0})
/tmp/tracee-master/pkg/signatures/engine/engine.go:324 +0x8d8
[github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start(0xc0036201a0](http://github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start(0xc0036201a0), {0x45e6548, 0xc00362c3c0})
/tmp/tracee-master/pkg/signatures/engine/engine.go:209 +0x3bf
created by [github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents)
in goroutine 83
/tmp/tracee-master/pkg/ebpf/signature_engine.go:64 +0xd45
[originating from goroutine 83]:
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents(..).)
/tmp/tracee-master/pkg/ebpf/signature_engine.go:70 +0xd45
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).handleEvents(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).handleEvents(..).)
/tmp/tracee-master/pkg/ebpf/events_pipeline.go:120 +0x7fa
created by [github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run)
/tmp/tracee-master/pkg/ebpf/tracee.go:1409 +0x805
[originating from goroutine 1]:
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run(..).)
/tmp/tracee-master/pkg/ebpf/tracee.go:1413 +0x805
panic: close of closed channel
goroutine 255 [running]:
[github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).matchHandler(0xc0002e2820](http://github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).matchHandler(0xc0002e2820), 0xc00b104c40)
/tmp/tracee-master/pkg/signatures/engine/engine.go:226 +0x74
...
[github.com/aquasecurity/tracee/pkg/signatures/engine.signatureStart({0x7f518ddaa5a8](http://github.com/aquasecurity/tracee/pkg/signatures/engine.signatureStart(%7B0x7f518ddaa5a8),
0x7f518e137120}, 0xc00253a660, 0xc0002e2858)
/tmp/tracee-master/pkg/signatures/engine/engine.go:167 +0x268
created by [github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start](http://github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start)
in goroutine 29
/tmp/tracee-master/pkg/signatures/engine/engine.go:206 +0x318
[originating from goroutine 29]:
[github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start(..](http://github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start(..).)
/tmp/tracee-master/pkg/signatures/engine/engine.go:206 +0x318
created by github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents
/tmp/tracee-master/pkg/ebpf/signature_engine.go:64 +0xd45
[originating from goroutine 46]:
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents(..).)
/tmp/tracee-master/pkg/ebpf/signature_engine.go:70 +0xd45
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).handleEvents(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).handleEvents(..).)
/tmp/tracee-master/pkg/ebpf/events_pipeline.go:120 +0x7fa
created by [github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run)
/tmp/tracee-master/pkg/ebpf/tracee.go:1409 +0x805
[originating from goroutine 1]:
[github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run(..](http://github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run(..).)
/tmp/tracee-master/pkg/ebpf/tracee.go:1413 +0x805
==================
WARNING: DATA RACE
Write at 0x00c0010dc5b0 by goroutine 61:
runtime.closechan()
/home/vagrant/go/pkg/mod/golang.org/[email protected]/src/runtime/chan.go:357 +0x0
github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents.func2.deferwrap3()
/vagrant/pkg/ebpf/signature_engine.go:73 +0x38
runtime.deferreturn()
/home/vagrant/go/pkg/mod/golang.org/[email protected]/src/runtime/panic.go:602 +0x5d
Previous read at 0x00c0010dc5b0 by goroutine 70:
runtime.chansend()
/home/vagrant/go/pkg/mod/golang.org/[email protected]/src/runtime/chan.go:160 +0x0
github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).matchHandler()
/vagrant/pkg/signatures/engine/engine.go:237 +0x59e
github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).matchHandler-fm()
<autogenerated>:1 +0x4c
...
github.com/aquasecurity/tracee/pkg/signatures/engine.signatureStart()
/vagrant/pkg/signatures/engine/engine.go:167 +0x31e
github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start.gowrap2()
/vagrant/pkg/signatures/engine/engine.go:206 +0x84
Goroutine 61 (running) created at:
github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents()
/vagrant/pkg/ebpf/signature_engine.go:70 +0x1c19
github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).handleEvents()
/vagrant/pkg/ebpf/events_pipeline.go:120 +0x1159
github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).Run.gowrap6()
/vagrant/pkg/ebpf/tracee.go:1409 +0x84
Goroutine 70 (running) created at:
github.com/aquasecurity/tracee/pkg/signatures/engine.(*Engine).Start()
/vagrant/pkg/signatures/engine/engine.go:206 +0x474
github.com/aquasecurity/tracee/pkg/ebpf.(*Tracee).engineEvents.gowrap1()
/vagrant/pkg/ebpf/signature_engine.go:64 +0x64
==================