mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-09-03 07:55:05 +00:00
Merge pull request #3345 from kmjohansen/topics/kj/rngd-eintr
rngd exits after being stopped and resumed
This commit is contained in:
@@ -16,7 +16,7 @@ onboot:
|
||||
image: linuxkit/metadata:v0.7
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: sshd
|
||||
image: linuxkit/sshd:v0.7
|
||||
binds:
|
||||
|
@@ -11,7 +11,7 @@ onboot:
|
||||
image: linuxkit/sysctl:v0.7
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: sshd
|
||||
|
@@ -26,7 +26,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: ntpd
|
||||
image: linuxkit/openntpd:v0.7
|
||||
|
||||
|
@@ -38,7 +38,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
files:
|
||||
- path: etc/dm-crypt/key
|
||||
# the below key is just to keep the example self-contained
|
||||
|
@@ -32,7 +32,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
files:
|
||||
- path: etc/dm-crypt/key
|
||||
# the below key is just to keep the example self-contained
|
||||
|
@@ -22,7 +22,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: ntpd
|
||||
|
@@ -20,7 +20,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: sshd
|
||||
image: linuxkit/sshd:v0.7
|
||||
binds:
|
||||
|
@@ -19,7 +19,7 @@ services:
|
||||
#env:
|
||||
# - INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
files:
|
||||
- path: etc/getty.shadow
|
||||
# sample sets password for root to "abcdefgh" (without quotes)
|
||||
|
@@ -30,7 +30,7 @@ services:
|
||||
destination: writeable-host-etc
|
||||
options: ["rw", "lowerdir=/etc", "upperdir=/run/hostetc/upper", "workdir=/run/hostetc/work"]
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: nginx
|
||||
image: nginx:1.13.8-alpine
|
||||
capabilities:
|
||||
|
@@ -11,7 +11,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: node_exporter
|
||||
|
@@ -17,7 +17,7 @@ onboot:
|
||||
command: ["/usr/bin/metadata", "openstack"]
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: sshd
|
||||
image: linuxkit/sshd:v0.7
|
||||
binds:
|
||||
|
@@ -10,7 +10,7 @@ init:
|
||||
- linuxkit/firmware:v0.7
|
||||
onboot:
|
||||
- name: rngd1
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
command: ["/sbin/rngd", "-1"]
|
||||
- name: sysctl
|
||||
image: linuxkit/sysctl:v0.7
|
||||
@@ -22,7 +22,7 @@ onboot:
|
||||
command: ["/usr/bin/metadata", "packet"]
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: getty
|
||||
image: linuxkit/getty:v0.7
|
||||
env:
|
||||
|
@@ -15,7 +15,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: open-vm-tools
|
||||
|
@@ -10,7 +10,7 @@ onboot:
|
||||
- name: sysctl
|
||||
image: linuxkit/sysctl:v0.7
|
||||
- name: rngd1
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
command: ["/sbin/rngd", "-1"]
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
@@ -23,7 +23,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
trust:
|
||||
org:
|
||||
- linuxkit
|
||||
|
@@ -10,7 +10,7 @@ onboot:
|
||||
- name: sysctl
|
||||
image: linuxkit/sysctl:v0.7
|
||||
- name: rngd1
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
command: ["/sbin/rngd", "-1"]
|
||||
services:
|
||||
- name: getty
|
||||
@@ -18,7 +18,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: sshd
|
||||
|
@@ -28,7 +28,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
trust:
|
||||
org:
|
||||
- linuxkit
|
||||
|
@@ -20,7 +20,7 @@ services:
|
||||
- name: tss
|
||||
image: linuxkit/tss:v0.7
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
files:
|
||||
- path: etc/getty.shadow
|
||||
# sample sets password for root to "abcdefgh" (without quotes)
|
||||
|
@@ -15,7 +15,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: nginx
|
||||
|
@@ -20,7 +20,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: sshd
|
||||
image: linuxkit/sshd:v0.7
|
||||
binds:
|
||||
|
@@ -45,7 +45,7 @@ services:
|
||||
- INSECURE=true
|
||||
net: /run/netns/wg1
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: nginx
|
||||
image: nginx:1.13.8-alpine
|
||||
net: /run/netns/wg0
|
||||
|
@@ -22,7 +22,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: nginx
|
||||
image: nginx:1.13.8-alpine
|
||||
capabilities:
|
||||
|
@@ -9,6 +9,7 @@ import (
|
||||
"flag"
|
||||
"log"
|
||||
"os"
|
||||
"syscall"
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/unix"
|
||||
@@ -62,6 +63,17 @@ func main() {
|
||||
// sleep until we can write more
|
||||
nevents, err := unix.EpollWait(epfd, events[:], timeout)
|
||||
if err != nil {
|
||||
// According to signal(7) on Linux, epoll_wait(2) returns EINTR if
|
||||
// the system call is interrupted by a SIGSTOP and then resumed by
|
||||
// a SIGCONT, even if the default signal handler remains in place.
|
||||
// This is a long-winded way of saying that we must handle EINTR
|
||||
// here, or else the program may exit after being stopped and then
|
||||
// resumed by a signal, a debugger, or ptrace.
|
||||
if e, ok := err.(syscall.Errno); ok {
|
||||
if e.Temporary() {
|
||||
continue
|
||||
}
|
||||
}
|
||||
log.Fatalf("epoll wait error: %v", err)
|
||||
}
|
||||
if nevents == 1 && events[0].Events&unix.EPOLLOUT == unix.EPOLLOUT {
|
||||
|
@@ -25,7 +25,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: ntpd
|
||||
image: linuxkit/openntpd:v0.7
|
||||
- name: docker
|
||||
|
@@ -25,7 +25,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: ntpd
|
||||
image: linuxkit/openntpd:v0.7
|
||||
- name: docker
|
||||
|
@@ -15,7 +15,7 @@ onboot:
|
||||
command: ["/sbin/dhcpcd", "--nobackground", "-f", "/dhcpcd.conf", "-1"]
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: nginx
|
||||
image: nginx:1.13.8-alpine
|
||||
capabilities:
|
||||
|
@@ -16,7 +16,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
files:
|
||||
|
@@ -18,7 +18,7 @@ services:
|
||||
env:
|
||||
- INSECURE=true
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: nginx
|
||||
image: nginx:1.13.8-alpine
|
||||
capabilities:
|
||||
|
@@ -18,7 +18,7 @@ onboot:
|
||||
command: ["/usr/bin/mountie", "/var/lib/docker"]
|
||||
services:
|
||||
- name: rngd
|
||||
image: linuxkit/rngd:v0.7
|
||||
image: linuxkit/rngd:02c555b50cd1887aa628836662d2eec54c0d7e81
|
||||
- name: dhcpcd
|
||||
image: linuxkit/dhcpcd:v0.7
|
||||
- name: docker
|
||||
|
Reference in New Issue
Block a user