syzbot


DATA RACE in kernel.(*Kernel).EmitUnimplementedEvent

Status: fixed on 2019/07/31 23:43
Fix commit: cf2b2d97d512 Initialize kernel.unimplementedSyscallEmitter with a sync.Once.
First crash: 1945d, last: 1944d

Sample crash report:
WARNING: DATA RACE
Read at 0x00c00014a2a8 by goroutine 337:
DIAGNOSIS:
I0730 17:07:52.362225   55682 x:0] ***************************
I0730 17:07:52.362387   55682 x:0] Args: [/syzkaller/managers/ptrace-proxy-sandbox-race/current/image -root /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root -watchdog-action=panic -network=none -debug -alsologtostderr -platform=ptrace -file-access=shared -network=sandbox debug -stacks ci-gvisor-ptrace-proxy-sandbox-race-1]
I0730 17:07:52.362516   55682 x:0] Version release-20190529.1-284-g8da9f8a12c51
I0730 17:07:52.362585   55682 x:0] PID: 55682
I0730 17:07:52.362643   55682 x:0] UID: 0, GID: 0
I0730 17:07:52.362700   55682 x:0] Configuration:
I0730 17:07:52.362743   55682 x:0] 		RootDir: /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root
I0730 17:07:52.362787   55682 x:0] 		Platform: ptrace
I0730 17:07:52.362828   55682 x:0] 		FileAccess: shared, overlay: false
I0730 17:07:52.362908   55682 x:0] 		Network: sandbox, logging: false
I0730 17:07:52.362975   55682 x:0] 		Strace: false, max size: 1024, syscalls: []
I0730 17:07:52.363034   55682 x:0] ***************************
D0730 17:07:52.363137   55682 x:0] Load container "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0730 17:07:52.373706   55682 x:0] Signal container "ci-gvisor-ptrace-proxy-sandbox-race-1": signal 0
D0730 17:07:52.373851   55682 x:0] Signal sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0730 17:07:52.373945   55682 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0730 17:07:52.374992   55682 x:0] urpc: successfully marshalled 117 bytes.
D0730 17:07:52.376340   55682 x:0] urpc: unmarshal success.
I0730 17:07:52.376459   55682 x:0] Found sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1", PID: 53147
I0730 17:07:52.376551   55682 x:0] Retrieving sandbox stacks
D0730 17:07:52.376580   55682 x:0] Stacks sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0730 17:07:52.376700   55682 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0730 17:07:52.376928   55682 x:0] urpc: successfully marshalled 36 bytes.
D0730 17:07:52.545654   55682 x:0] urpc: unmarshal success.
I0730 17:07:52.545917   55682 x:0]      *** Stack dump ***
goroutine 516 [running]:
gvisor.dev/gvisor/pkg/log.Stacks(0x45e501, 0xc0002632c0, 0xc0003ad7d0, 0xc00065a000)
	pkg/log/log.go:272 +0xb6
gvisor.dev/gvisor/runsc/boot.(*debug).Stacks(0x2514060, 0x2514060, 0xc000288190, 0x0, 0x0)
	runsc/boot/debug.go:26 +0x38
reflect.Value.call(0xc0002632c0, 0xc000138ab8, 0x13, 0x11ca90e, 0x4, 0xc000935eb8, 0x3, 0x3, 0x4aa54e, 0x106dfe0, ...)
	GOROOT/src/reflect/value.go:447 +0x649
reflect.Value.Call(0xc0002632c0, 0xc000138ab8, 0x13, 0xc000935eb8, 0x3, 0x3, 0x0, 0x2514060, 0x16)
	GOROOT/src/reflect/value.go:308 +0xc1
gvisor.dev/gvisor/pkg/urpc.(*Server).handleOne(0xc00025b980, 0xc000342de0, 0x0, 0x0)
	pkg/urpc/urpc.go:325 +0x63f
gvisor.dev/gvisor/pkg/urpc.(*Server).handleRegistered(0xc00025b980, 0xc000342de0, 0xc00025b980, 0xc000342de0)
	pkg/urpc/urpc.go:420 +0x43
gvisor.dev/gvisor/pkg/urpc.(*Server).StartHandling.func1(0xc00025b980, 0xc000342de0)
	pkg/urpc/urpc.go:440 +0x77
created by gvisor.dev/gvisor/pkg/urpc.(*Server).StartHandling
	pkg/urpc/urpc.go:438 +0x6f

goroutine 1 [semacquire]:
sync.runtime_Semacquire(0xc000302124)
	GOROOT/src/runtime/sema.go:56 +0x39
sync.(*WaitGroup).Wait(0xc000302124)
	GOROOT/src/sync/waitgroup.go:130 +0xb2
gvisor.dev/gvisor/pkg/sentry/kernel.(*Kernel).WaitExited(...)
	pkg/sentry/kernel/kernel.go:937
gvisor.dev/gvisor/runsc/boot.(*Loader).WaitExit(0xc000366000, 0x0, 0x0)
	runsc/boot/loader.go:862 +0x74
gvisor.dev/gvisor/runsc/cmd.(*Boot).Execute(0xc0002601b0, 0x13dac60, 0xc000134010, 0xc0002623c0, 0xc000232b60, 0x2, 0x2, 0x0)
	runsc/cmd/boot.go:254 +0x1484
github.com/google/subcommands.(*Commander).Execute(0xc000140000, 0x13dac60, 0xc000134010, 0xc000232b60, 0x2, 0x2, 0x0)
	external/com_github_google_subcommands/subcommands.go:200 +0x522
github.com/google/subcommands.Execute(...)
	external/com_github_google_subcommands/subcommands.go:481
main.main()
	runsc/main.go:262 +0x2855

Crashes (3):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/07/30 17:17 https://gvisor.googlesource.com/gvisor master 8da9f8a12c51 f28bf2a5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2019/07/31 21:37 https://gvisor.googlesource.com/gvisor master a7d5e0d254f2 995b2a26 .config console log report ci-gvisor-kvm-direct-overlay-host-race
2019/07/31 06:56 https://gvisor.googlesource.com/gvisor master e511c0e05f82 7c7ded69 .config console log report ci-gvisor-kvm-direct-overlay-host-race
* Struck through repros no longer work on HEAD.