diff options
author | Adin Scannell <ascannell@google.com> | 2018-06-15 09:29:19 -0700 |
---|---|---|
committer | Shentubot <shentubot@google.com> | 2018-06-15 09:30:08 -0700 |
commit | b31ac4e1dfc0eef688e2d8e85df965292690726e (patch) | |
tree | 689bb3787dd38b5677e536bb8d0127d9aab4e01c | |
parent | ef5dd4df9b65fb98d952b83baa736c14b2627fe7 (diff) |
Use notify explicitly on unlock path.
There are circumstances under which the redpill call will not generate
the appropriate action and notification. Replace this call with an
explicit notification, which is guaranteed to transition as well as
perform the futex wake.
PiperOrigin-RevId: 200726934
Change-Id: Ie19e008a6007692dd7335a31a8b59f0af6e54aaa
-rw-r--r-- | pkg/sentry/platform/kvm/machine.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pkg/sentry/platform/kvm/machine.go b/pkg/sentry/platform/kvm/machine.go index ab2ccc695..f045345d5 100644 --- a/pkg/sentry/platform/kvm/machine.go +++ b/pkg/sentry/platform/kvm/machine.go @@ -397,7 +397,7 @@ func (c *vCPU) unlock() { case vCPUUser | vCPUGuest | vCPUWaiter: // Force a transition: this must trigger a notification when we // return from guest mode. - redpill() + c.notify() case vCPUUser | vCPUWaiter: // Waiting for the lock to be released; the responsibility is // on us to notify the waiter and clear the associated bit. |