Your message dated Mon, 13 Apr 2020 12:49:16 +0000
with message-id <[email protected]>
and subject line Bug#956502: fixed in docker.io 19.03.6+dfsg1-4
has caused the Debian Bug report #956502,
regarding runc init hangs on reopening exec.fifo
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
956502: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956502
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: runc
Version: 1.0.0~rc10+dfsg1-1
Severity: normal

Hi,

I'm unable to run even the simplest Docker container on my system.
Even doing 'docker build/run -it' on "FROM busybox:latest" results in
'runc init' getting stuck. This is what I get...

=====
jan@p53:~/tmp$ docker run -it my:bb
docker: Error response from daemon: no status provided on response: unknown.
ERRO[0001] error waiting for container: context canceled 
=====

... and what I found looking around:

=====
root     27066 23255  0 15:46 ?        Sl     0:00      \_ 
docker-containerd-shim -namespace moby -workdir 
/var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/5a53a9fbfd52215143a737ef16f398f0d1debe8b0e955bbff9c12f2f9b78da33
 -address /var/run/docker/containerd/containerd.sock -containerd-binary /usr/
root     27082 27066  4 15:46 pts/0    Ssl+   0:00          \_ runc init
=====
root@p53:/tmp/runc-1.0.0~rc10+dfsg1# docker container ls -a
CONTAINER ID        IMAGE               COMMAND                  CREATED        
     STATUS              PORTS               NAMES
5a53a9fbfd52        my:bb               "sh"                     12 seconds ago 
     Created                                 amazing_villani
=====
root@p53:/tmp/runc-1.0.0~rc10+dfsg1# strace -p27082
strace: Process 27082 attached
openat(AT_FDCWD, "/proc/self/fd/6", O_WRONLY|O_CLOEXEC^Cstrace: Process 27082 
detached
 <detached ...>
=====
root@p53:/tmp/runc-1.0.0~rc10+dfsg1# lsof -p27082
COMMAND     PID USER   FD      TYPE DEVICE SIZE/OFF     NODE NAME
runc:[2:I 27082 root  cwd       DIR  253,4     4096   131073 /
runc:[2:I 27082 root  rtd       DIR  253,4     4096   131073 /
runc:[2:I 27082 root  txt       REG  253,0  8940480 27669163 /
runc:[2:I 27082 root  mem       REG  253,0  1831600 27670317 
/usr/lib/x86_64-linux-gnu/libc-2.30.so
runc:[2:I 27082 root  mem       REG  253,0   329960 27665569 
/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3
runc:[2:I 27082 root  mem       REG  253,0   146912 27670379 
/usr/lib/x86_64-linux-gnu/libpthread-2.30.so
runc:[2:I 27082 root  mem       REG  253,0   169720 27669833 
/usr/lib/x86_64-linux-gnu/ld-2.30.so
runc:[2:I 27082 root    0u      CHR  136,0      0t0        3 /dev/pts/0
runc:[2:I 27082 root    1u      CHR  136,0      0t0        3 /dev/pts/0
runc:[2:I 27082 root    2u      CHR  136,0      0t0        3 /dev/pts/0
runc:[2:I 27082 root    5w     FIFO   0,11      0t0   371326 pipe
runc:[2:I 27082 root    6u     FIFO   0,19      0t0   371323 
/run/docker/runtime-runc/moby/5a53a9fbfd52215143a737ef16f398f0d1debe8b0e955bbff9c12f2f9b78da33/exec.fifo
runc:[2:I 27082 root    8u  a_inode   0,12        0     1039 [eventpoll]
runc:[2:I 27082 root    9u      CHR  136,0      0t0        3 /dev/pts/0
=====
root@p53:/tmp/runc-1.0.0~rc10+dfsg1# lsof 
/run/docker/runtime-runc/moby/5a53a9fbfd52215143a737ef16f398f0d1debe8b0e955bbff9c12f2f9b78da33/exec.fifo
 
COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
runc:[2:I 27082 root    6u  FIFO   0,19      0t0 371323 
/run/docker/runtime-runc/moby/5a53a9fbfd52215143a737ef16f398f0d1debe8b0e955bbff9c12f2f9b78da33/exec.fifo
=====

Manually doing a 'cat .../exec.fifo' yields a single '0' and allows the
'runc init' process to spawn into the desired shell. However I cannot
attach to the container, as docker insists it's not running.

Some googling around showed that there have been some races in opening
that fifo in the past[1]. I don't understand how this call can still be
blocked; no matter which open came first (O_RDWR that resulted in fd 6
or the blocked O_WRONLY one), once a reader is present this should
complete.

Multithreading backtraces, if that's any help (yes, different PID,
same problem as above):

=====
(gdb) inf thr
  Id   Target Id                 Frame 
* 1    LWP 27577 "runc:[2:INIT]" syscall.Syscall6 () at 
syscall/asm_linux_amd64.s:53
  2    LWP 27579 "runc:[2:INIT]" runtime.futex () at 
runtime/sys_linux_amd64.s:536
  3    LWP 27580 "runc:[2:INIT]" runtime.futex () at 
runtime/sys_linux_amd64.s:536
  4    LWP 27581 "runc:[2:INIT]" runtime.futex () at 
runtime/sys_linux_amd64.s:536
  5    LWP 27582 "runc:[2:INIT]" runtime.futex () at 
runtime/sys_linux_amd64.s:536
(gdb) bt
#0  syscall.Syscall6 () at syscall/asm_linux_amd64.s:53
#1  0x000000000052ef7b in golang.org/x/sys/unix.openat (dirfd=-100, path=..., 
flags=524289, mode=0, fd=<optimized out>, err=...) at 
golang.org/x/sys/unix/zsyscall_linux_amd64.go:89
#2  0x00000000007967f2 in golang.org/x/sys/unix.Open (path=..., fd=<optimized 
out>, err=..., mode=<optimized out>, perm=<optimized out>) at 
golang.org/x/sys/unix/syscall_linux.go:150
#3  github.com/opencontainers/runc/libcontainer.(*linuxStandardInit).Init 
(l=0xc00015da70, ~r0=...) at 
github.com/opencontainers/runc/libcontainer/standard_init_linux.go:188
#4  0x0000000000784ad4 in 
github.com/opencontainers/runc/libcontainer.(*LinuxFactory).StartInitialization 
(l=<optimized out>, err=...) at 
github.com/opencontainers/runc/libcontainer/factory_linux.go:380
#5  0x00000000007f84ab in main.glob..func6 (context=<optimized out>, ~r1=...) 
at github.com/opencontainers/runc/init.go:43
#6  0x00000000007b767e in github.com/urfave/cli.HandleAction (action=..., 
context=0xc0000d49a0, err=...) at github.com/urfave/cli/app.go:523
#7  0x00000000007b83dc in github.com/urfave/cli.Command.Run (c=..., 
ctx=0xc0000d4840, err=...) at github.com/urfave/cli/command.go:174
#8  0x00000000007b5725 in github.com/urfave/cli.(*App).Run (a=0xc0000b6000, 
arguments=..., err=...) at github.com/urfave/cli/app.go:276
#9  0x00000000007eeac4 in main.main () at 
github.com/opencontainers/runc/main.go:145
(gdb) thr 2
[Switching to thread 2 (LWP 27579)]
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
536     runtime/sys_linux_amd64.s: No such file or directory.
(gdb) bt
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
#1  0x000000000042fc04 in runtime.futexsleep (addr=0xc89470 
<runtime.sched+272>, val=0, ns=60000000000) at runtime/os_linux.go:50
#2  0x000000000040f50e in runtime.notetsleep_internal (n=0xc89470 
<runtime.sched+272>, ns=60000000000, ~r2=<optimized out>) at 
runtime/lock_futex.go:193
#3  0x000000000040f5e1 in runtime.notetsleep (n=0xc89470 <runtime.sched+272>, 
ns=60000000000, ~r2=<optimized out>) at runtime/lock_futex.go:216
#4  0x000000000043e7de in runtime.sysmon () at runtime/proc.go:4316
#5  0x0000000000436d13 in runtime.mstart1 () at runtime/proc.go:1201
#6  0x0000000000436c2e in runtime.mstart () at runtime/proc.go:1167
#7  0x0000000000800cbc in crosscall_amd64 () at gcc_amd64.S:35
#8  0x00007f340dbed700 in ?? ()
#9  0x00007f340dbecfc0 in ?? ()
#10 0x00007ffe8e5c56ef in ?? ()
#11 0x000000c000000900 in ?? ()
#12 0x0000000000436bc0 in ?? () at runtime/proc.go:1080
#13 0x0000000000000000 in ?? ()
(gdb) thr 3
[Switching to thread 3 (LWP 27580)]
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
536     in runtime/sys_linux_amd64.s
(gdb) bt
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
#1  0x000000000042fb86 in runtime.futexsleep (addr=0xca5600 <runtime.sig>, 
val=0, ns=-1) at runtime/os_linux.go:44
#2  0x000000000040f466 in runtime.notetsleep_internal (n=0xca5600 
<runtime.sig>, ns=-1, ~r2=<optimized out>) at runtime/lock_futex.go:174
#3  0x000000000040f66c in runtime.notetsleepg (n=0xca5600 <runtime.sig>, ns=-1, 
~r2=<optimized out>) at runtime/lock_futex.go:228
#4  0x00000000004480bc in os/signal.signal_recv (~r0=<optimized out>) at 
runtime/sigqueue.go:147
#5  0x00000000007d32f2 in os/signal.loop () at os/signal/signal_unix.go:23
#6  0x000000000045fa01 in runtime.goexit () at runtime/asm_amd64.s:1357
#7  0x0000000000000000 in ?? ()
(gdb) thr 4
[Switching to thread 4 (LWP 27581)]
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
536     in runtime/sys_linux_amd64.s
(gdb) bt
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
#1  0x000000000042fb86 in runtime.futexsleep (addr=0xc000040bc8, val=0, ns=-1) 
at runtime/os_linux.go:44
#2  0x000000000040f38f in runtime.notesleep (n=0xc000040bc8) at 
runtime/lock_futex.go:151
#3  0x0000000000438110 in runtime.stopm () at runtime/proc.go:1928
#4  0x000000000043922f in runtime.findrunnable (gp=0xc00002a000, 
inheritTime=false) at runtime/proc.go:2391
#5  0x0000000000439ede in runtime.schedule () at runtime/proc.go:2524
#6  0x000000000043a21d in runtime.park_m (gp=0xc000074600) at 
runtime/proc.go:2610
#7  0x000000000045d91b in runtime.mcall () at runtime/asm_amd64.s:318
#8  0x00007f3404000020 in ?? ()
#9  0x0000000000800000 in nsexec () at nsexec.c:947
#10 0x0000000000000000 in ?? ()
(gdb) thr 5
[Switching to thread 5 (LWP 27582)]
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
536     in runtime/sys_linux_amd64.s
(gdb) bt
#0  runtime.futex () at runtime/sys_linux_amd64.s:536
#1  0x000000000042fb86 in runtime.futexsleep (addr=0xca5518 
<runtime.newmHandoff+24>, val=0, ns=-1) at runtime/os_linux.go:44
#2  0x000000000040f38f in runtime.notesleep (n=0xca5518 
<runtime.newmHandoff+24>) at runtime/lock_futex.go:151
#3  0x0000000000438032 in runtime.templateThread () at runtime/proc.go:1906
#4  0x0000000000436d13 in runtime.mstart1 () at runtime/proc.go:1201
#5  0x0000000000436c2e in runtime.mstart () at runtime/proc.go:1167
#6  0x0000000000800cbc in crosscall_amd64 () at gcc_amd64.S:35
#7  0x00007f33fffff700 in ?? ()
#8  0x00007f33ffffefc0 in ?? ()
#9  0x00007ffe8e5c578f in ?? ()
#10 0x000000c000074180 in ?? ()
#11 0x0000000000436bc0 in ?? () at runtime/proc.go:1080
#12 0x0000000000000000 in ?? ()
=====

My system is an up-to-date Debian unstable (but with a custom kernel).

Thanks!

Jan

[1]: https://github.com/opencontainers/runc/pull/1698

--- End Message ---
--- Begin Message ---
Source: docker.io
Source-Version: 19.03.6+dfsg1-4
Done: Dmitry Smirnov <[email protected]>

We believe that the bug you reported is fixed in the latest version of
docker.io, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Dmitry Smirnov <[email protected]> (supplier of updated docker.io package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Mon, 13 Apr 2020 22:19:11 +1000
Source: docker.io
Architecture: source
Version: 19.03.6+dfsg1-4
Distribution: unstable
Urgency: medium
Maintainer: Arnaud Rebillout <[email protected]>
Changed-By: Dmitry Smirnov <[email protected]>
Closes: 956502
Changes:
 docker.io (19.03.6+dfsg1-4) unstable; urgency=medium
 .
   * Do not use bundled "golang-github-stevvooe-ttrpc-dev" (Closes: #956502).
Checksums-Sha1:
 9ea401493acaeb89ace9cd9777e3a0bd5cf0fdf2 8572 docker.io_19.03.6+dfsg1-4.dsc
 175809d92c681957692fffa2b36dec4363809f49 47884 
docker.io_19.03.6+dfsg1-4.debian.tar.xz
 cce25e48243c33afbe5f3e6a113a7709dcf5219e 26459 
docker.io_19.03.6+dfsg1-4_amd64.buildinfo
Checksums-Sha256:
 6f05dc79ce616f32165341415acf4c1b087be46a546aeab8b7d2f879a703e664 8572 
docker.io_19.03.6+dfsg1-4.dsc
 e39a229a4035e3b5fc9b671021145bd0c4bedc2a0aa06274d21bf7fa3fb358d2 47884 
docker.io_19.03.6+dfsg1-4.debian.tar.xz
 9b7928fbee5cfb40dbb8164d67c0adef1717b5378c53d95ee6ce6a8b010618a5 26459 
docker.io_19.03.6+dfsg1-4_amd64.buildinfo
Files:
 9e4d071318b013ea452ae47fb18e312f 8572 admin optional 
docker.io_19.03.6+dfsg1-4.dsc
 db0484de02427438fbbaa7c4447c5c9e 47884 admin optional 
docker.io_19.03.6+dfsg1-4.debian.tar.xz
 0fc1e16fbc02a39e2a5ec8425116609b 26459 admin optional 
docker.io_19.03.6+dfsg1-4_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEULx8+TnSDCcqawZWUra72VOWjRsFAl6UXV8ACgkQUra72VOW
jRvPiw//ZxGwQ0P4HCqO/Wc+jL6EJ6UjscjahRMwhu8Yvqa5BRT5Wi68ia6l3OPe
KmNhQgnhEaMeDwXFdhxAL/fisBoL7pWbLgpCZSgnzhN7IagG6/7J8JE0V1hgUoYR
z6gRspr0AUQUqgRpNvMBm7iL80MoiM3PIX1p/HkDkNoDyztE+uWZMTQpjSObXolh
nLuWcO+jAA0V1ZJ7LKjap5O5j5MVQQbfUCaZGnoel1jscxb373s56Q3vlpwLkD+M
XTQktQaJWeKNNoFTZUI+DDoIapQg3t16M8DrKc3BY6K/iK5cSA5udfFXLw+p87de
35MfspKgi0qh6yw0crfO2E3Gd1zATYwuclV86/MiwnajJTuKve7UQ7wgxNdWyCWR
D3sdrXTbkBarCFyZeDeISiPaU1zsj9lDAUMA05SU5WQRx/N8Q5NW8FSEDoBFItJe
ZJ291OBBdtTE8c94pSNE83d7mSNUdtfEQP9GdO/LYzJFttjLegdd6UZwFr05sZeC
5D7RI/MpWXrIblMaOe51D21j1nuuZPhTA4Z2IxlljdIVLUqQFwSJ7GMq8OvF7pmq
SGRmB8D/ylWeqVogIejTXhoc5i5KVzuojgao2ELlMIuR/71Z5iCi2585AKdbI51w
mcaX5pmuxsk5HNpNTHmtkQe16+2jQy3fIH8yMuyt0BMLNZbm8O4=
=9hPT
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to