Skip to content

SIGKILL during zombie state following exit(2) changes exit status #7930

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
prattmic opened this issue Aug 30, 2022 · 1 comment · Fixed by #7931 or #7932
Closed

SIGKILL during zombie state following exit(2) changes exit status #7930

prattmic opened this issue Aug 30, 2022 · 1 comment · Fixed by #7931 or #7932
Labels
type: bug Something isn't working

Comments

@prattmic
Copy link
Member

Description

If a SIGKILL is sent while a thread group is zombied it can change the exit status to SIGKILL if the last task exited with exit(2). If it exited with exit_group(2), then the exit status cannot change (matching Linux).

Steps to reproduce

See ExitTest.SigkillZombieThread in the incoming PR.

runsc version

No response

docker version (if using docker)

No response

uname

No response

kubectl (if using Kubernetes)

No response

repo state (if built from source)

No response

runsc debug logs (if available)

No response

@prattmic
Copy link
Member Author

At a higher level, runsc sends a SIGKILL to all tasks when the gofer exits. The gofer exits when the init task exits. If the init task exits with exit(2), then the gofer shutdown SIGKILL changes the exit status to 9, making the entire container appear to have failed.

DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
DarrylWong pushed a commit to DarrylWong/go-benchmarks that referenced this issue Apr 22, 2024
Update gVisor past the fix to google/gvisor#7930.

Fixes golang/go#51445.

Change-Id: I1bf4c471dd3375b6223a578b7b29dfc2182de84c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug Something isn't working
Projects
None yet
1 participant