Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Nov 2022 13:57:57 GMT
From:      =?utf-8?Q?Corvin=20K=C3=B6hne?= <corvink@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 59339f3a16c0 - stable/13 - vmm: remove unneccessary rendezvous assertion
Message-ID:  <202211291357.2ATDvvZr029321@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by corvink:

URL: https://cgit.FreeBSD.org/src/commit/?id=59339f3a16c0aacbdb789b8600365f576a6a6a31

commit 59339f3a16c0aacbdb789b8600365f576a6a6a31
Author:     Corvin Köhne <corvink@FreeBSD.org>
AuthorDate: 2022-11-17 06:51:51 +0000
Commit:     Corvin Köhne <corvink@FreeBSD.org>
CommitDate: 2022-11-29 13:53:09 +0000

    vmm: remove unneccessary rendezvous assertion
    
    When a vcpu sees that a rendezvous is in progress, it exits and tries to
    handle the rendezvous. The vcpu doesn't check if it's part of the
    rendezvous or not. If the vcpu isn't part of the rendezvous, the
    rendezvous could be done before it reaches the assertion. This will
    cause a panic.
    
    The assertion isn't needed at all because vm_handle_rendezvous properly
    handles a spurious rendezvous. So, we can just remove it.
    
    PR:                     267779
    Reviewed by:            jhb, markj
    Tested by:              bz
    Approved by:            manu (mentor)
    MFC after:              1 week
    Sponsored by:           Beckhoff Automation GmbH & Co. KG
    Differential Revision:  https://reviews.freebsd.org/D37417
    
    (cherry picked from commit fde8ce889201bf7fe86d7a3b3dfe2abf27cd2d73)
---
 sys/amd64/vmm/vmm.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c
index fc7ea3d7b4be..4de924287336 100644
--- a/sys/amd64/vmm/vmm.c
+++ b/sys/amd64/vmm/vmm.c
@@ -1696,8 +1696,6 @@ vm_exit_rendezvous(struct vm *vm, int vcpuid, uint64_t rip)
 {
 	struct vm_exit *vmexit;
 
-	KASSERT(vm->rendezvous_func != NULL, ("rendezvous not in progress"));
-
 	vmexit = vm_exitinfo(vm, vcpuid);
 	vmexit->rip = rip;
 	vmexit->inst_length = 0;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202211291357.2ATDvvZr029321>