Date: Mon, 21 Nov 2022 14:15:45 +0100 From: Kristof Provost <kp@FreeBSD.org> To: John Baldwin <jhb@FreeBSD.org> Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: c0f35dbf19c3 - main - vmm: Use a cpuset_t for vCPUs waiting for STARTUP IPIs. Message-ID: <B7E34E6F-924F-412E-88CC-ED4A65936001@FreeBSD.org> In-Reply-To: <202211181826.2AIIQssl030757@gitrepo.freebsd.org> References: <202211181826.2AIIQssl030757@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--=_MailMate_9195AF87-15B8-46D2-B75E-5791331F0D7F_= Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable On 18 Nov 2022, at 19:26, John Baldwin wrote: > The branch main has been updated by jhb: > > URL: = > https://cgit.FreeBSD.org/src/commit/?id=3Dc0f35dbf19c3c8825bd2b321d8efd= 582807d1940 > > commit c0f35dbf19c3c8825bd2b321d8efd582807d1940 > Author: John Baldwin <jhb@FreeBSD.org> > AuthorDate: 2022-11-18 18:05:10 +0000 > Commit: John Baldwin <jhb@FreeBSD.org> > CommitDate: 2022-11-18 18:25:38 +0000 > > vmm: Use a cpuset_t for vCPUs waiting for STARTUP IPIs. > > Retire the boot_state member of struct vlapic and instead use a = > cpuset > in the VM to track vCPUs waiting for STARTUP IPIs. INIT IPIs add > vCPUs to this set, and STARTUP IPIs remove vCPUs from the set. > STARTUP IPIs are only reported to userland for vCPUs that were = > removed > from the set. > > In particular, this permits a subsequent change to allocate vCPUs = > on > demand when the vCPU may not be allocated until after a STARTUP = > IPI is > reported to userland. > > Reviewed by: corvink, markj > Differential Revision: https://reviews.freebsd.org/D37173 > --- > sys/amd64/include/vmm.h | 3 +++ > sys/amd64/vmm/io/vlapic.c | 46 = > ++++++++++-------------------------------- > sys/amd64/vmm/io/vlapic_priv.h | 7 ------- > sys/amd64/vmm/vmm.c | 27 +++++++++++++++++++++++++ > 4 files changed, 41 insertions(+), 42 deletions(-) > I=E2=80=99m seeing a panic starting a bhyve guest, and I think this commi= t = might be the responsible one: login: panic: acquiring blockable sleep lock with spinlock or critical = section held (sleep mutex) vm rendezvous lock @ = /usr/src/sys/amd64/vmm/vmm.c:2508 cpuid =3D 14 time =3D 1669035212 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame = 0xfffffe015f2dd530 vpanic() at vpanic+0x151/frame 0xfffffe015f2dd580 panic() at panic+0x43/frame 0xfffffe015f2dd5e0 witness_checkorder() at witness_checkorder+0xd3e/frame = 0xfffffe015f2dd7a0 __mtx_lock_flags() at __mtx_lock_flags+0x94/frame 0xfffffe015f2dd7f0 vm_start_cpus() at vm_start_cpus+0x31/frame 0xfffffe015f2dd820 vlapic_icrlo_write_handler() at vlapic_icrlo_write_handler+0x30c/frame = 0xfffffe015f2dd8a0 vmx_run() at vmx_run+0x20ed/frame 0xfffffe015f2dd9c0 vm_run() at vm_run+0x1d2/frame 0xfffffe015f2ddaa0 vmmdev_ioctl() at vmmdev_ioctl+0x644/frame 0xfffffe015f2ddb40 devfs_ioctl() at devfs_ioctl+0xcd/frame 0xfffffe015f2ddb90 vn_ioctl() at vn_ioctl+0x131/frame 0xfffffe015f2ddca0 devfs_ioctl_f() at devfs_ioctl_f+0x1e/frame 0xfffffe015f2ddcc0 kern_ioctl() at kern_ioctl+0x202/frame 0xfffffe015f2ddd30 sys_ioctl() at sys_ioctl+0x12a/frame 0xfffffe015f2dde00 amd64_syscall() at amd64_syscall+0x12e/frame 0xfffffe015f2ddf30 fast_syscall_common() at fast_syscall_common+0xf8/frame = 0xfffffe015f2ddf30 --- syscall (54, FreeBSD ELF64, ioctl), rip =3D 0x3dd9cbd7f94a, rsp =3D = 0x3ddc1d44ae58, rbp =3D 0x3ddc1d44af10 --- And kgdb=E2=80=99s backtrace: (kgdb) bt #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:59 #1 dump_savectx () at /usr/src/sys/kern/kern_shutdown.c:405 #2 0xffffffff80bec678 in dumpsys (di=3D0x0) at = /usr/src/sys/x86/include/dump.h:87 #3 doadump (textdump=3Dtextdump@entry=3D0) at = /usr/src/sys/kern/kern_shutdown.c:434 #4 0xffffffff804b403a in db_dump (dummy=3D<optimized out>, = dummy2=3D<unavailable>, dummy3=3D<unavailable>, dummy4=3D<unavailable>) a= t = /usr/src/sys/ddb/db_command.c:593 #5 0xffffffff804b3e40 in db_command (last_cmdp=3D<optimized out>, = cmd_table=3D<optimized out>, dopager=3Dtrue) at = /usr/src/sys/ddb/db_command.c:506 #6 0xffffffff804b3b0d in db_command_loop () at = /usr/src/sys/ddb/db_command.c:553 #7 0xffffffff804b71a6 in db_trap (type=3D<optimized out>, = code=3D<optimized out>) at /usr/src/sys/ddb/db_main.c:270 #8 0xffffffff80c3b89e in kdb_trap (type=3Dtype@entry=3D3, = code=3D<unavailable>, code@entry=3D0, tf=3Dtf@entry=3D0xfffffe015f2dd470)= at = /usr/src/sys/kern/subr_kdb.c:745 #9 0xffffffff810ce577 in trap (frame=3D0xfffffe015f2dd470) at = /usr/src/sys/amd64/amd64/trap.c:611 #10 <signal handler called> #11 kdb_enter (why=3D<optimized out>, msg=3D<optimized out>) at = /usr/src/sys/kern/subr_kdb.c:509 #12 0xffffffff80bec822 in vpanic (fmt=3D<optimized out>, = ap=3Dap@entry=3D0xfffffe015f2dd5c0) at /usr/src/sys/kern/kern_shutdown.c:= 967 #13 0xffffffff80bec5c3 in panic (fmt=3D0xffffffff81e8ce70 <cnputs_mtx> = "\314:)\201\377\377\377\377") at /usr/src/sys/kern/kern_shutdown.c:903 #14 0xffffffff80c5ea4e in witness_checkorder (lock=3D0xfffff804d585d138,= = flags=3D<optimized out>, file=3D<optimized out>, line=3D2508, = interlock=3D<optimized out>) at /usr/src/sys/kern/subr_witness.c:1202 #15 0xffffffff80bc6d04 in __mtx_lock_flags (c=3D0xfffff804d585d150, = opts=3D0, file=3D0xffffffff8322542d "/usr/src/sys/amd64/vmm/vmm.c", = line=3D2508) at /usr/src/sys/kern/kern_mutex.c:278 #16 0xffffffff83204101 in vm_start_cpus (vm=3D0xfffff804d585d000, = tostart=3Dtostart@entry=3D0xfffffe015f2dd858) at = /usr/src/sys/amd64/vmm/vmm.c:2508 #17 0xffffffff83211b5c in vlapic_icrlo_write_handler = (vlapic=3Dvlapic@entry=3D0xfffff8048dc14a80, = retu=3Dretu@entry=3D0xfffffe015f2dd950) at = /usr/src/sys/amd64/vmm/io/vlapic.c:1172 #18 0xffffffff8321977d in vmx_handle_apic_write = (vcpu=3D0xfffff8048db3ac00, vlapic=3D0xfffff8048dc14a80, qual=3D768) at = /usr/src/sys/amd64/vmm/intel/vmx.c:2184 #19 vmx_exit_process (vmx=3D0xfffff804d585b000, vcpu=3D0xfffff8048db3ac0= 0, = vmexit=3D0xfffff804a7c1a688) at /usr/src/sys/amd64/vmm/intel/vmx.c:2767 #20 vmx_run (vcpui=3D0xfffff8048db3ac00, rip=3D<optimized out>, = pmap=3D0xfffffe003dce1530, evinfo=3D0xfffffe015f2dd9d8) at = /usr/src/sys/amd64/vmm/intel/vmx.c:3174 #21 0xffffffff83202572 in vm_run (vcpu=3Dvcpu@entry=3D0xfffff804a7c1a600= , = vme_user=3Dvme_user@entry=3D0xfffff80032601b08) at = /usr/src/sys/amd64/vmm/vmm.c:1873 #22 0xffffffff83205ab4 in vmmdev_ioctl (cdev=3D<optimized out>, = cmd=3D3230692865, data=3D<optimized out>, fflag=3D<optimized out>, = td=3D<optimized out>) at /usr/src/sys/amd64/vmm/vmm_dev.c:565 #23 0xffffffff80a7be7d in devfs_ioctl (ap=3D0xfffffe015f2ddba8) at = /usr/src/sys/fs/devfs/devfs_vnops.c:933 #24 0xffffffff80cf6421 in vn_ioctl (fp=3D0xfffff8000ce2cb40, = com=3D<optimized out>, data=3D0xfffff80032601b00, = active_cred=3D0xfffff8000c4d0800, td=3D0x10) at = /usr/src/sys/kern/vfs_vnops.c:1699 #25 0xffffffff80a7c52e in devfs_ioctl_f (fp=3D0xffffffff81e8ce70 = <cnputs_mtx>, com=3D0, data=3D0xffffffff812a0000, cred=3D0x1, td=3D0x10) = at = /usr/src/sys/fs/devfs/devfs_vnops.c:864 #26 0xffffffff80c64672 in fo_ioctl (fp=3D0xfffff8000ce2cb40, = com=3D3230692865, data=3D0x1d0, active_cred=3D0x1, td=3D<optimized out>) = at = /usr/src/sys/sys/file.h:365 #27 kern_ioctl (td=3Dtd@entry=3D0xfffffe0160936000, fd=3D<optimized out>= , = com=3Dcom@entry=3D3230692865, data=3D0x1d0 <error: Cannot access memory a= t = address 0x1d0>, data@entry=3D0xfffff80032601b00 "") at /usr/src/sys/kern/sys_generic.c:803 #28 0xffffffff80c643ba in sys_ioctl (td=3D0xfffffe0160936000, = uap=3D0xfffffe01609363f8) at /usr/src/sys/kern/sys_generic.c:711 #29 0xffffffff810cf3be in syscallenter (td=3D<optimized out>) at = /usr/src/sys/amd64/amd64/../../kern/subr_syscall.c:189 #30 amd64_syscall (td=3D0xfffffe0160936000, traced=3D0) at = /usr/src/sys/amd64/amd64/trap.c:1200 #31 <signal handler called> #32 0x00003dd9cbd7f94a in ?? () Backtrace stopped: Cannot access memory at address 0x3ddc1d44ae58 (kgdb) fr 16 #16 0xffffffff83204101 in vm_start_cpus (vm=3D0xfffff804d585d000, = tostart=3Dtostart@entry=3D0xfffffe015f2dd858) at = /usr/src/sys/amd64/vmm/vmm.c:2508 2508 mtx_lock(&vm->rendezvous_mtx); I believe WITNESS is upset that we=E2=80=99re going to potentially sleep = doing = mtx_lock(&vm->rendezvous_mtx); in vm_start_cpus() when we=E2=80=99ve done= = critical_enter() in vm_run(). Best regards, Kristof --=_MailMate_9195AF87-15B8-46D2-B75E-5791331F0D7F_= Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <!DOCTYPE html> <html> <head> <meta http-equiv=3D"Content-Type" content=3D"text/xhtml; charset=3Dutf-8"= > </head> <body><div style=3D"font-family: sans-serif;"><div class=3D"markdown" sty= le=3D"white-space: normal;"> <p dir=3D"auto">On 18 Nov 2022, at 19:26, John Baldwin wrote:</p> </div><div class=3D"plaintext" style=3D"white-space: normal;"><blockquote= style=3D"margin: 0 0 5px; padding-left: 5px; border-left: 2px solid #136= BCE; color: #136BCE;"><p dir=3D"auto">The branch main has been updated by= jhb:</p> <p dir=3D"auto">URL: <a href=3D"https://cgit.FreeBSD.org/src/commit/?id=3D= c0f35dbf19c3c8825bd2b321d8efd582807d1940">https://cgit.FreeBSD.org/src/co= mmit/?id=3Dc0f35dbf19c3c8825bd2b321d8efd582807d1940</a></p> <p dir=3D"auto">commit c0f35dbf19c3c8825bd2b321d8efd582807d1940 <br> Author: John Baldwin <jhb@FreeBSD.org> <br> AuthorDate: 2022-11-18 18:05:10 +0000 <br> Commit: John Baldwin <jhb@FreeBSD.org> <br> CommitDate: 2022-11-18 18:25:38 +0000</p> <p dir=3D"auto"> vmm: Use a cpuset_t for vCPUs waiting for STARTUP IPI= s.</p> <p dir=3D"auto"> Retire the boot_state member of struct vlapic and ins= tead use a cpuset <br> in the VM to track vCPUs waiting for STARTUP IPIs. INIT IPIs add <br> vCPUs to this set, and STARTUP IPIs remove vCPUs from the set. <br> STARTUP IPIs are only reported to userland for vCPUs that were remove= d <br> from the set.</p> <p dir=3D"auto"> In particular, this permits a subsequent change to al= locate vCPUs on <br> demand when the vCPU may not be allocated until after a STARTUP IPI i= s <br> reported to userland.</p> <p dir=3D"auto"> Reviewed by: corvink, markj <br> Differential Revision: <a href=3D"https://reviews.freebsd.org/D37173= ">https://reviews.freebsd.org/D37173</a> <br> --- <br> sys/amd64/include/vmm.h | 3 +++ <br> sys/amd64/vmm/io/vlapic.c | 46 ++++++++++--------------------------= ------ <br> sys/amd64/vmm/io/vlapic_priv.h | 7 ------- <br> sys/amd64/vmm/vmm.c | 27 +++++++++++++++++++++++++ <br> 4 files changed, 41 insertions(+), 42 deletions(-)</p> <br></blockquote></div> <div class=3D"markdown" style=3D"white-space: normal;"> <p dir=3D"auto">I=E2=80=99m seeing a panic starting a bhyve guest, and I = think this commit might be the responsible one:</p> <pre style=3D"margin-left: 15px; margin-right: 15px; padding: 5px; border= : thin solid gray; overflow-x: auto; max-width: 90vw; background-color: #= E4E4E4;"><code style=3D"padding: 0 0.25em; background-color: #E4E4E4;">lo= gin: panic: acquiring blockable sleep lock with spinlock or critical sect= ion held (sleep mutex) vm rendezvous lock @ /usr/src/sys/amd64/vmm/vmm.c:= 2508 cpuid =3D 14 time =3D 1669035212 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe015f2= dd530 vpanic() at vpanic+0x151/frame 0xfffffe015f2dd580 panic() at panic+0x43/frame 0xfffffe015f2dd5e0 witness_checkorder() at witness_checkorder+0xd3e/frame 0xfffffe015f2dd7a0= __mtx_lock_flags() at __mtx_lock_flags+0x94/frame 0xfffffe015f2dd7f0 vm_start_cpus() at vm_start_cpus+0x31/frame 0xfffffe015f2dd820 vlapic_icrlo_write_handler() at vlapic_icrlo_write_handler+0x30c/frame 0x= fffffe015f2dd8a0 vmx_run() at vmx_run+0x20ed/frame 0xfffffe015f2dd9c0 vm_run() at vm_run+0x1d2/frame 0xfffffe015f2ddaa0 vmmdev_ioctl() at vmmdev_ioctl+0x644/frame 0xfffffe015f2ddb40 devfs_ioctl() at devfs_ioctl+0xcd/frame 0xfffffe015f2ddb90 vn_ioctl() at vn_ioctl+0x131/frame 0xfffffe015f2ddca0 devfs_ioctl_f() at devfs_ioctl_f+0x1e/frame 0xfffffe015f2ddcc0 kern_ioctl() at kern_ioctl+0x202/frame 0xfffffe015f2ddd30 sys_ioctl() at sys_ioctl+0x12a/frame 0xfffffe015f2dde00 amd64_syscall() at amd64_syscall+0x12e/frame 0xfffffe015f2ddf30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe015f2ddf3= 0 --- syscall (54, FreeBSD ELF64, ioctl), rip =3D 0x3dd9cbd7f94a, rsp =3D 0= x3ddc1d44ae58, rbp =3D 0x3ddc1d44af10 --- </code></pre> <p dir=3D"auto">And kgdb=E2=80=99s backtrace:</p> <pre style=3D"margin-left: 15px; margin-right: 15px; padding: 5px; border= : thin solid gray; overflow-x: auto; max-width: 90vw; background-color: #= E4E4E4;"><code style=3D"padding: 0 0.25em; background-color: #E4E4E4;">(k= gdb) bt #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:59 #1 dump_savectx () at /usr/src/sys/kern/kern_shutdown.c:405 #2 0xffffffff80bec678 in dumpsys (di=3D0x0) at /usr/src/sys/x86/include/= dump.h:87 #3 doadump (textdump=3Dtextdump@entry=3D0) at /usr/src/sys/kern/kern_shu= tdown.c:434 #4 0xffffffff804b403a in db_dump (dummy=3D<optimized out>, dummy2=3D= <unavailable>, dummy3=3D<unavailable>, dummy4=3D<unavailab= le>) at /usr/src/sys/ddb/db_command.c:593 #5 0xffffffff804b3e40 in db_command (last_cmdp=3D<optimized out>, = cmd_table=3D<optimized out>, dopager=3Dtrue) at /usr/src/sys/ddb/db= _command.c:506 #6 0xffffffff804b3b0d in db_command_loop () at /usr/src/sys/ddb/db_comma= nd.c:553 #7 0xffffffff804b71a6 in db_trap (type=3D<optimized out>, code=3D&= lt;optimized out>) at /usr/src/sys/ddb/db_main.c:270 #8 0xffffffff80c3b89e in kdb_trap (type=3Dtype@entry=3D3, code=3D<una= vailable>, code@entry=3D0, tf=3Dtf@entry=3D0xfffffe015f2dd470) at /usr= /src/sys/kern/subr_kdb.c:745 #9 0xffffffff810ce577 in trap (frame=3D0xfffffe015f2dd470) at /usr/src/s= ys/amd64/amd64/trap.c:611 #10 <signal handler called> #11 kdb_enter (why=3D<optimized out>, msg=3D<optimized out>) = at /usr/src/sys/kern/subr_kdb.c:509 #12 0xffffffff80bec822 in vpanic (fmt=3D<optimized out>, ap=3Dap@en= try=3D0xfffffe015f2dd5c0) at /usr/src/sys/kern/kern_shutdown.c:967 #13 0xffffffff80bec5c3 in panic (fmt=3D0xffffffff81e8ce70 <cnputs_mtx&= gt; "\314:)\201\377\377\377\377") at /usr/src/sys/kern/kern_shu= tdown.c:903 #14 0xffffffff80c5ea4e in witness_checkorder (lock=3D0xfffff804d585d138, = flags=3D<optimized out>, file=3D<optimized out>, line=3D2508,= interlock=3D<optimized out>) at /usr/src/sys/kern/subr_witness.c:1202 #15 0xffffffff80bc6d04 in __mtx_lock_flags (c=3D0xfffff804d585d150, opts=3D= 0, file=3D0xffffffff8322542d "/usr/src/sys/amd64/vmm/vmm.c", li= ne=3D2508) at /usr/src/sys/kern/kern_mutex.c:278 #16 0xffffffff83204101 in vm_start_cpus (vm=3D0xfffff804d585d000, tostart= =3Dtostart@entry=3D0xfffffe015f2dd858) at /usr/src/sys/amd64/vmm/vmm.c:25= 08 #17 0xffffffff83211b5c in vlapic_icrlo_write_handler (vlapic=3Dvlapic@ent= ry=3D0xfffff8048dc14a80, retu=3Dretu@entry=3D0xfffffe015f2dd950) at /usr/= src/sys/amd64/vmm/io/vlapic.c:1172 #18 0xffffffff8321977d in vmx_handle_apic_write (vcpu=3D0xfffff8048db3ac0= 0, vlapic=3D0xfffff8048dc14a80, qual=3D768) at /usr/src/sys/amd64/vmm/int= el/vmx.c:2184 #19 vmx_exit_process (vmx=3D0xfffff804d585b000, vcpu=3D0xfffff8048db3ac00= , vmexit=3D0xfffff804a7c1a688) at /usr/src/sys/amd64/vmm/intel/vmx.c:2767= #20 vmx_run (vcpui=3D0xfffff8048db3ac00, rip=3D<optimized out>, pma= p=3D0xfffffe003dce1530, evinfo=3D0xfffffe015f2dd9d8) at /usr/src/sys/amd6= 4/vmm/intel/vmx.c:3174 #21 0xffffffff83202572 in vm_run (vcpu=3Dvcpu@entry=3D0xfffff804a7c1a600,= vme_user=3Dvme_user@entry=3D0xfffff80032601b08) at /usr/src/sys/amd64/vm= m/vmm.c:1873 #22 0xffffffff83205ab4 in vmmdev_ioctl (cdev=3D<optimized out>, cmd= =3D3230692865, data=3D<optimized out>, fflag=3D<optimized out>= ;, td=3D<optimized out>) at /usr/src/sys/amd64/vmm/vmm_dev.c:565 #23 0xffffffff80a7be7d in devfs_ioctl (ap=3D0xfffffe015f2ddba8) at /usr/s= rc/sys/fs/devfs/devfs_vnops.c:933 #24 0xffffffff80cf6421 in vn_ioctl (fp=3D0xfffff8000ce2cb40, com=3D<op= timized out>, data=3D0xfffff80032601b00, active_cred=3D0xfffff8000c4d0= 800, td=3D0x10) at /usr/src/sys/kern/vfs_vnops.c:1699 #25 0xffffffff80a7c52e in devfs_ioctl_f (fp=3D0xffffffff81e8ce70 <cnpu= ts_mtx>, com=3D0, data=3D0xffffffff812a0000, cred=3D0x1, td=3D0x10) at= /usr/src/sys/fs/devfs/devfs_vnops.c:864 #26 0xffffffff80c64672 in fo_ioctl (fp=3D0xfffff8000ce2cb40, com=3D323069= 2865, data=3D0x1d0, active_cred=3D0x1, td=3D<optimized out>) at /us= r/src/sys/sys/file.h:365 #27 kern_ioctl (td=3Dtd@entry=3D0xfffffe0160936000, fd=3D<optimized ou= t>, com=3Dcom@entry=3D3230692865, data=3D0x1d0 <error: Cannot acces= s memory at address 0x1d0>, data@entry=3D0xfffff80032601b00 "&quo= t;) at /usr/src/sys/kern/sys_generic.c:803 #28 0xffffffff80c643ba in sys_ioctl (td=3D0xfffffe0160936000, uap=3D0xfff= ffe01609363f8) at /usr/src/sys/kern/sys_generic.c:711 #29 0xffffffff810cf3be in syscallenter (td=3D<optimized out>) at /u= sr/src/sys/amd64/amd64/../../kern/subr_syscall.c:189 #30 amd64_syscall (td=3D0xfffffe0160936000, traced=3D0) at /usr/src/sys/a= md64/amd64/trap.c:1200 #31 <signal handler called> #32 0x00003dd9cbd7f94a in ?? () Backtrace stopped: Cannot access memory at address 0x3ddc1d44ae58 (kgdb) fr 16 #16 0xffffffff83204101 in vm_start_cpus (vm=3D0xfffff804d585d000, tostart= =3Dtostart@entry=3D0xfffffe015f2dd858) at /usr/src/sys/amd64/vmm/vmm.c:25= 08 2508 mtx_lock(&vm->rendezvous_mtx); </code></pre> <p dir=3D"auto">I believe WITNESS is upset that we=E2=80=99re going to po= tentially sleep doing mtx_lock(&vm->rendezvous_mtx); in vm_start_c= pus() when we=E2=80=99ve done critical_enter() in vm_run().</p> <p dir=3D"auto">Best regards,<br> Kristof</p> </div> </div> </body> </html> --=_MailMate_9195AF87-15B8-46D2-B75E-5791331F0D7F_=--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B7E34E6F-924F-412E-88CC-ED4A65936001>