Closed
Description
Env: linux/arm, Raspbian
The bundle to reproduce the panic is at https://github.com/rakyll/ocibundles/tree/master/armv7/blink
Start the bundle.
8000
ctr containers start blink /containers/armv7/blink
containerd panics with the following:
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x24c50c]
goroutine 35 [running, locked to thread]:
github.com/docker/containerd/linux.(*libcontainerRuntime).createCgroupConfig(0x109e6cb0, 0x109e3920, 0x5, 0x10b060b0, 0x10a056e0, 0x7, 0x8, 0x1, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/linux/linux.go:691 +0x61c
github.com/docker/containerd/linux.(*libcontainerRuntime).createLibcontainerConfig(0x109e6cb0, 0x109e3920, 0x5, 0x10a05180, 0x1f, 0x109f2b00, 0x10b060b0, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/linux/linux.go:585 +0xcec
github.com/docker/containerd/linux.(*libcontainerRuntime).Create(0x109e6cb0, 0x109e3920, 0x5, 0x10a05180, 0x1f, 0x0, 0x0, 0x0, 0x0, 0x109e9470, ...)
/home/pi/src/github.com/docker/containerd/linux/linux.go:396 +0x210
github.com/docker/containerd/supervisor.(*StartEvent).Handle(0x109e6cd8, 0x109f2a80, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/supervisor/create.go:11 +0xc0
github.com/docker/containerd/supervisor.(*commonEvent).Handle(0x109de720)
/home/pi/src/github.com/docker/containerd/supervisor/event.go:78 +0xa8
github.com/docker/containerd/eventloop.(*ChanLoop).Start.func1()
/home/pi/src/github.com/docker/containerd/eventloop/eventloop.go:41 +0xd8
sync.(*Once).Do(0x10a41774, 0x109e6da0)
/home/pi/go/src/sync/once.go:44 +0x118
created by github.com/docker/containerd/eventloop.(*ChanLoop).Start
/home/pi/src/github.com/docker/containerd/eventloop/eventloop.go:43 +0x8c
goroutine 1 [IO wait]:
net.runtime_pollWait(0x75b89018, 0x72, 0x109140b0)
/home/pi/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0x109e94b8, 0x72, 0x0, 0x0)
/home/pi/go/src/net/fd_poll_runtime.go:73 +0x34
net.(*pollDesc).WaitRead(0x109e94b8, 0x0, 0x0)
/home/pi/go/src/net/fd_poll_runtime.go:78 +0x30
net.(*netFD).accept(0x109e9480, 0x0, 0x75b89110, 0x10915e70)
/home/pi/go/src/net/fd_unix.go:408 +0x21c
net.(*UnixListener).AcceptUnix(0x10a417c0, 0x109519e8, 0x0, 0x0)
/home/pi/go/src/net/unixsock_posix.go:304 +0x4c
net.(*UnixListener).Accept(0x10a417c0, 0x0, 0x0, 0x0, 0x0)
/home/pi/go/src/net/unixsock_posix.go:314 +0x3c
google.golang.org/grpc.(*Server).Serve(0x109eba10, 0x75b88040, 0x10a417c0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:224 +0x18c
main.daemon(0x10a41320, 0xb, 0x10a445c0, 0x1f, 0x10a41330, 0xf, 0xa, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/containerd/main.go:211 +0x640
main.main.func2(0x10a22a20)
/home/pi/src/github.com/docker/containerd/containerd/main.go:90 +0x118
github.com/codegangsta/cli.(*App).Run(0x10a2c140, 0x1090a0f0, 0x1, 0x1, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/github.com/codegangsta/cli/app.go:181 +0xe00
main.main()
/home/pi/src/github.com/docker/containerd/containerd/main.go:100 +0xec
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/home/pi/go/src/runtime/asm_arm.s:1036 +0x4
goroutine 7 [chan receive]:
github.com/docker/containerd/api/grpc/server.(*apiServer).Events(0x109e6dc0, 0x77e3ac, 0x763cb4b8, 0x1090a7c8, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/server/server.go:227 +0x98
github.com/docker/containerd/api/grpc/types._API_Events_Handler(0x4e8d40, 0x109e6dc0, 0x763cb428, 0x10956c90, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/types/api.pb.go:1001 +0x148
google.golang.org/grpc.(*Server).processStreamingRPC(0x109eba10, 0x75b47110, 0x109f0780, 0x1090c300, 0x10a41800, 0x751e58, 0x109fcea0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:421 +0x2f4
google.golang.org/grpc.(*Server).handleStream(0x109eba10, 0x75b47110, 0x109f0780, 0x1090c300, 0x109fcea0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:493 +0xdb4
google.golang.org/grpc.(*Server).Serve.func2.1.1(0x109eba10, 0x75b47110, 0x109f0780, 0x1090c300, 0x109fcea0, 0x10acb6c0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:278 +0x3c
created by google.golang.org/grpc.(*Server).Serve.func2.1
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:280 +0x4b4
goroutine 50 [select, locked to thread]:
runtime.gopark(0x5e3a40, 0x1091a78c, 0x50b5c8, 0x6, 0x45c18, 0x2)
/home/pi/go/src/runtime/proc.go:185 +0x148
runtime.selectgoImpl(0x1091a78c, 0x0, 0xc)
/home/pi/go/src/runtime/select.go:392 +0x14d4
runtime.selectgo(0x1091a78c)
/home/pi/go/src/runtime/select.go:212 +0x10
runtime.ensureSigM.func1()
/home/pi/go/src/runtime/signal1_unix.go:227 +0x428
runtime.goexit()
/home/pi/go/src/runtime/asm_arm.s:1036 +0x4
goroutine 21 [syscall]:
os/signal.loop()
/home/pi/go/src/os/signal/signal_unix.go:22 +0x14
created by os/signal.init.1
/home/pi/go/src/os/signal/signal_unix.go:28 +0x30
goroutine 22 [chan receive]:
github.com/rcrowley/go-metrics.(*meterArbiter).tick(0x7699d0)
/home/pi/src/github.com/docker/containerd/vendor/src/github.com/rcrowley/go-metrics/meter.go:221 +0x48
created by github.com/rcrowley/go-metrics.NewMeter
/home/pi/src/github.com/docker/containerd/vendor/src/github.com/rcrowley/go-metrics/meter.go:40 +0x1ac
goroutine 23 [chan receive]:
github.com/docker/containerd/supervisor.(*statsCollector).run(0x109eb980)
/home/pi/src/github.com/docker/containerd/supervisor/stats_collector.go:167 +0x84
created by github.com/docker/containerd/supervisor.newStatsCollector
/home/pi/src/github.com/docker/containerd/supervisor/stats_collector.go:105 +0x160
goroutine 24 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d30)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 25 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d38)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 26 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d40)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 27 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d48)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 28 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d50)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 29 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d58)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 30 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d60)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 31 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d68)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 32 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d70)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 33 [chan receive]:
github.com/docker/containerd/supervisor.(*worker).Start(0x109e6d78)
/home/pi/src/github.com/docker/containerd/supervisor/worker.go:40 +0x8c
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:185 +0x1f8
goroutine 34 [chan receive]:
main.startSignalHandler(0x109ee780)
/home/pi/src/github.com/docker/containerd/containerd/reap_linux.go:24 +0x1ec
created by main.daemon
/home/pi/src/github.com/docker/containerd/containerd/main.go:197 +0x3e4
goroutine 52 [semacquire]:
sync.runtime_Semacquire(0x109e28ec)
/home/pi/go/src/runtime/sema.go:43 +0x24
sync.(*WaitGroup).Wait(0x109e28e0)
/home/pi/go/src/sync/waitgroup.go:126 +0xc0
google.golang.org/grpc.(*Server).Serve.func2(0x75b47110, 0x10a020a0, 0x109eba10)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:282 +0xc4
created by google.golang.org/grpc.(*Server).Serve
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:286 +0xa2c
goroutine 57 [chan receive]:
github.com/docker/containerd/api/grpc/server.(*apiServer).Events(0x109e6dc0, 0x77e3ac, 0x763cb4b8, 0x109de6e0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/server/server.go:227 +0x98
github.com/docker/containerd/api/grpc/types._API_Events_Handler(0x4e8d40, 0x109e6dc0, 0x763cb428, 0x109e4f60, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/types/api.pb.go:1001 +0x148
google.golang.org/grpc.(*Server).processStreamingRPC(0x109eba10, 0x75b47110, 0x10912460, 0x109f2880, 0x10a41800, 0x751e58, 0x10a04ee0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:421 +0x2f4
google.golang.org/grpc.(*Server).handleStream(0x109eba10, 0x75b47110, 0x10912460, 0x109f2880, 0x10a04ee0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:493 +0xdb4
google.golang.org/grpc.(*Server).Serve.func2.1.1(0x109eba10, 0x75b47110, 0x10912460, 0x109f2880, 0x10a04ee0, 0x10915e80)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:278 +0x3c
created by google.golang.org/grpc.(*Server).Serve.func2.1
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:280 +0x4b4
goroutine 37 [chan receive]:
github.com/docker/containerd/api/grpc/server.(*apiServer).Events(0x109e6dc0, 0x77e3ac, 0x763cb4b8, 0x1090a790, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/server/server.go:227 +0x98
github.com/docker/containerd/api/grpc/types._API_Events_Handler(0x4e8d40, 0x109e6dc0, 0x763cb428, 0x10956ba0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/types/api.pb.go:1001 +0x148
google.golang.org/grpc.(*Server).processStreamingRPC(0x109eba10, 0x75b47110, 0x10a020a0, 0x109eea80, 0x10a41800, 0x751e58, 0x10a44fe0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:421 +0x2f4
google.golang.org/grpc.(*Server).handleStream(0x109eba10, 0x75b47110, 0x10a020a0, 0x109eea80, 0x10a44fe0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:493 +0xdb4
google.golang.org/grpc.(*Server).Serve.func2.1.1(0x109eba10, 0x75b47110, 0x10a020a0, 0x109eea80, 0x10a44fe0, 0x109e28e0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:278 +0x3c
created by google.golang.org/grpc.(*Server).Serve.func2.1
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:280 +0x4b4
goroutine 9 [select]:
google.golang.org/grpc/transport.(*http2Server).controller(0x10912460)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/transport/http2_server.go:613 +0x578
created by google.golang.org/grpc/transport.newHTTP2Server
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/transport/http2_server.go:133 +0x6f4
goroutine 40 [semacquire]:
sync.runtime_Semacquire(0x10acb6cc)
/home/pi/go/src/runtime/sema.go:43 +0x24
sync.(*WaitGroup).Wait(0x10acb6c0)
/home/pi/go/src/sync/waitgroup.go:126 +0xc0
google.golang.org/grpc.(*Server).Serve.func2(0x75b47110, 0x109f0780, 0x109eba10)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:282 +0xc4
created by google.golang.org/grpc.(*Server).Serve
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:286 +0xa2c
goroutine 10 [IO wait]:
net.runtime_pollWait(0x75b88fa0, 0x72, 0x109140b0)
/home/pi/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0x109549b8, 0x72, 0x0, 0x0)
/home/pi/go/src/net/fd_poll_runtime.go:73 +0x34
net.(*pollDesc).WaitRead(0x109549b8, 0x0, 0x0)
/home/pi/go/src/net/fd_poll_runtime.go:78 +0x30
net.(*netFD).Read(0x10954980, 0x109c6860, 0x9, 0x9, 0x0, 0x763c7030, 0x109140b0)
/home/pi/go/src/net/fd_unix.go:232 +0x1c4
net.(*conn).Read(0x1090a890, 0x109c6860, 0x9, 0x9, 0x0, 0x0, 0x0)
/home/pi/go/src/net/net.go:172 +0xc8
io.ReadAtLeast(0x75b470c8, 0x1090a890, 0x109c6860, 0x9, 0x9, 0x9, 0x0, 0x0, 0x0)
/home/pi/go/src/io/io.go:298 +0xdc
io.ReadFull(0x75b470c8, 0x1090a890, 0x109c6860, 0x9, 0x9, 0x75b89268, 0x0, 0x0)
/home/pi/go/src/io/io.go:316 +0x5c
golang.org/x/net/http2.readFrameHeader(0x109c6860, 0x9, 0x9, 0x75b470c8, 0x1090a890, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/golang.org/x/net/http2/frame.go:227 +0x80
golang.org/x/net/http2.(*Framer).ReadFrame(0x109c6840, 0x0, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/golang.org/x/net/http2/frame.go:395 +0xbc
google.golang.org/grpc/transport.(*framer).readFrame(0x109fd4c0, 0x0, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/transport/http_util.go:450 +0x38
google.golang.org/grpc/transport.(*http2Server).HandleStreams(0x10912460, 0x109fd540)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/transport/http2_server.go:242 +0x4e4
google.golang.org/grpc.(*Server).Serve.func2(0x75b47110, 0x10912460, 0x109eba10)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:281 +0xb8
created by google.golang.org/grpc.(*Server).Serve
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:286 +0xa2c
goroutine 54 [semacquire]:
sync.runtime_Semacquire(0x109e2a4c)
/home/pi/go/src/runtime/sema.go:43 +0x24
sync.(*WaitGroup).Wait(0x109e2a40)
/home/pi/go/src/sync/waitgroup.go:126 +0xc0
google.golang.org/grpc.(*Server).Serve.func2(0x75b47110, 0x10a02410, 0x109eba10)
/home/pi/src/githu
5AD6
b.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:282 +0xc4
created by google.golang.org/grpc.(*Server).Serve
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:286 +0xa2c
goroutine 55 [chan receive]:
github.com/docker/containerd/api/grpc/server.(*apiServer).Events(0x109e6dc0, 0x77e3ac, 0x763cb4b8, 0x1090a888, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/server/server.go:227 +0x98
github.com/docker/containerd/api/grpc/types._API_Events_Handler(0x4e8d40, 0x109e6dc0, 0x763cb428, 0x10957c50, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/types/api.pb.go:1001 +0x148
google.golang.org/grpc.(*Server).processStreamingRPC(0x109eba10, 0x75b47110, 0x10a02410, 0x109f2480, 0x10a41800, 0x751e58, 0x10a04800, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:421 +0x2f4
google.golang.org/grpc.(*Server).handleStream(0x109eba10, 0x75b47110, 0x10a02410, 0x109f2480, 0x10a04800)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:493 +0xdb4
google.golang.org/grpc.(*Server).Serve.func2.1.1(0x109eba10, 0x75b47110, 0x10a02410, 0x109f2480, 0x10a04800, 0x109e2a40)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:278 +0x3c
created by google.golang.org/grpc.(*Server).Serve.func2.1
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:280 +0x4b4
goroutine 58 [chan receive]:
github.com/docker/containerd/api/grpc/server.(*apiServer).CreateContainer(0x109e6dc0, 0x75b891d8, 0x10a050c0, 0x109ecd80, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/server/server.go:47 +0x344
github.com/docker/containerd/api/grpc/types._API_CreateContainer_Handler(0x4e8d40, 0x109e6dc0, 0x75b891d8, 0x10a050c0, 0x10a05160, 0x0, 0x0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/api/grpc/types/api.pb.go:905 +0xe8
google.golang.org/grpc.(*Server).processUnaryRPC(0x109eba10, 0x75b47110, 0x10912460, 0x109f2980, 0x10a41800, 0x7527f0, 0x10a050a0, 0x0, 0x0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:350 +0x6d0
google.golang.org/grpc.(*Server).handleStream(0x109eba10, 0x75b47110, 0x10912460, 0x109f2980, 0x10a050a0)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:489 +0xd34
google.golang.org/grpc.(*Server).Serve.func2.1.1(0x109eba10, 0x75b47110, 0x10912460, 0x109f2980, 0x10a050a0, 0x10915e80)
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:278 +0x3c
created by google.golang.org/grpc.(*Server).Serve.func2.1
/home/pi/src/github.com/docker/containerd/vendor/src/google.golang.org/grpc/server.go:280 +0x4b4
Metadata
Metadata
Assignees
Labels
No labels