kvm/arm64: send SIGKILL if ring0.El0SyncInv has been triggered

Linux does the same thing.

PiperOrigin-RevId: 722789748
This commit is contained in:
Andrei Vagin
2025-02-03 14:07:09 -08:00
committed by gVisor bot
parent 3754522ab7
commit bd0dbf9b11
2 changed files with 3 additions and 2 deletions
+1 -1
View File
@@ -30,6 +30,6 @@ RUN curl https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud
ln -s /google-cloud-sdk/bin/gcloud /usr/bin/gcloud
# Download the official bazel binary. The APT repository isn't used because there is not packages for arm64.
RUN sh -c 'curl -o /usr/local/bin/bazel https://releases.bazel.build/7.3.2/release/bazel-7.3.2-linux-$(uname -m | sed s/aarch64/arm64/) && chmod ugo+x /usr/local/bin/bazel'
RUN sh -c 'curl -o /usr/local/bin/bazel https://releases.bazel.build/7.5.0/release/bazel-7.5.0-linux-$(uname -m | sed s/aarch64/arm64/) && chmod ugo+x /usr/local/bin/bazel'
WORKDIR /workspace
ENTRYPOINT ["/usr/local/bin/bazel"]
@@ -327,7 +327,8 @@ func (c *vCPU) SwitchToUser(switchOpts ring0.SwitchOpts, info *linux.SignalInfo)
return c.fault(int32(unix.SIGBUS), info)
case ring0.Vector(bounce): // ring0.VirtualizationException.
return hostarch.NoAccess, platform.ErrContextInterrupt
case ring0.El0SyncUndef:
case ring0.El0SyncUndef,
ring0.El0SyncInv:
return c.fault(int32(unix.SIGILL), info)
case ring0.El0SyncDbg:
*info = linux.SignalInfo{