From nobody Tue Mar 12 16:46:53 2024 X-Original-To: freebsd-virtualization@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvKLr3MyLz5F7gZ for ; Tue, 12 Mar 2024 16:47:32 +0000 (UTC) (envelope-from marietto2008@gmail.com) Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com [IPv6:2a00:1450:4864:20::62f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvKLr0T44z43S2 for ; Tue, 12 Mar 2024 16:47:32 +0000 (UTC) (envelope-from marietto2008@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-a44665605f3so812605666b.2 for ; Tue, 12 Mar 2024 09:47:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710262050; x=1710866850; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Nq/2ORzxwg7SNiSC8bMqxA93Hki1TPsGtNMgu/Rru+4=; b=hGwQ5AJ1KyAw6R/RmwqMcjYbrEsRy/kJISF8V2yCQBsZhj+l26ntNwFEwXQqHhVR6e cUwAhA6HvJvZySzGTFHxuGJ13CBvJeld+ij4m6tF/SH6LjoqzCi+ROCrpvO4UqP/pW9J luNp/Dxhongxpp7ZH17yzDPi8J5HmHEE1UyJd53ShtH4eyzJEYnJfTs0bmIFeFB0+K98 M2r3hI7pNkctMvZacRnSqQZ3prAAD+HGSRRJu17nSCVIugq2TC8x6BC5lNVhSDzujQ6a mqFC+u6ZI6pJDieUX2Kf1/bSa0gJXj3aJX4g41Boj3Uwn5n+7u3NgmyFqQQ13dpgSWiL FjAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710262050; x=1710866850; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Nq/2ORzxwg7SNiSC8bMqxA93Hki1TPsGtNMgu/Rru+4=; b=pmy+8NBEq7qf2Iig6yGBPT0tZaRrKze4U+MBLoZp3oCzIzJdGgxLrusEPQhJeD5OHc ZuJqf33w55VmovRcl7DdNRgKpjpzXgSBcecbwqMj7LvfiKo1taqXAi7KqtJBiMn3LKEg 7ZMu2wZhWel0SwnbZyKs9yR+9EV26FwSIzoBsYnhxaXUnY0UDxPdiZNstSSVBzN3zcBt F9qGzVp66+KWzrYQ6AUjal9o4T6rq1Nw6Zoy7dZbv8laQ0CTsHqmYs53wGUgKUxjPgGj XNpLAeVTxSLix4xAi//yOP//2Rr5zJvYSdPivr6tv0+F3O7YLoQO48qVu7bdif77Gtpq AS4A== X-Gm-Message-State: AOJu0YzRaEz1yzzcvg5/KOy43Pa+0TlakRDN1vB2asvZO7kJm6SNMfy/ Zk3+gc3tSBOY2ygkCPreh72TVfl1FHmFaLGXm06RHZ5fxwVi9Si7aCynl8BrFVI3NwjCz0NbdBE RXW7lPkMz4etP6fLt6Pn6PMEoPMm4xSeAQ6g= X-Google-Smtp-Source: AGHT+IFkebaemE8U063dC5FhFCpnXoEs5nCSaPoKsiXlNcLygwvr8ffy7G7w5p2CEvDLpGgTUW/gBa/Uvkm0/TRk0yM= X-Received: by 2002:a17:907:1681:b0:a46:1e16:316b with SMTP id cx1-20020a170907168100b00a461e16316bmr6045443ejd.66.1710262049875; Tue, 12 Mar 2024 09:47:29 -0700 (PDT) List-Id: Discussion List-Archive: https://lists.freebsd.org/archives/freebsd-virtualization List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Mario Marietto Date: Tue, 12 Mar 2024 17:46:53 +0100 Message-ID: Subject: Re: VNC Viewer on Windows: Unable to access VMs GUI To: Odhiambo Washington Cc: FreeBSD virtualization Content-Type: multipart/alternative; boundary="000000000000f4baa40613796969" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4TvKLr0T44z43S2 --000000000000f4baa40613796969 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable You will not go to stable. On Tue, Mar 12, 2024 at 2:44=E2=80=AFPM Odhiambo Washington wrote: > I run 14-RELEASE and would not like to go to -STABLE. > > On Tue, Mar 12, 2024 at 3:00=E2=80=AFPM Mario Marietto > wrote: > >> Try the procedure explained below to have the latest bhyve version well >> patched. Lets create these script files : >> >> 1) build_branch_releng-140 : >> >> set -e >> set -u >> >> readonly script_path=3D"$(cd "$(dirname "${0}")" && pwd)" >> readonly branch=3D"${1?Missing $(usage)}" >> shift >> echo $branch >> >> cd /usr/corvin-src-releng-140 >> git fetch --all --prune >> git checkout -f "${branch}" >> >> ${script_path}/build_releng_140 "$@" >> >> >> 2) build_releng_140 : >> >> >> #!/bin/sh >> usage() { >> cat >&2 << EOF >> Usage: ${0} [--no-bhf] [--reboot] [--verbose] [--without-kernel] >> Builds bhyve >> EOF >> exit 1 >> } >> >> build_module() { >> local _path >> _path=3D"${1}" >> >> # change to module path >> cd "${_path}" >> >> # clean module >> if test "${clean}" =3D "true"; then >> make clean > "${cmd_redirect}" 2>&1 >> fi >> >> # build module >> make > "${cmd_redirect}" 2>&1 >> >> # install module >> make install > "${cmd_redirect}" >> } >> >> build() { >> build_module "${src_dir}/include" >> build_module "${src_dir}/lib/libvmmapi" >> build_module "${src_dir}/sys/modules/vmm" >> >> # build kernel >> if test "${with_kernel}" =3D "true"; then >> cd "${src_dir}" >> local kern_opts >> kern_opts=3D"-j$(sysctl -n hw.ncpu)" >> if test "${with_bhf}" =3D "true"; then >> kern_opts=3D"${kern_opts} KERNCONF=3DBHF" >> fi >> if ! test "${clean}" =3D "true"; then >> kern_opts=3D"${kern_opts} NO_CLEAN=3DYES" >> fi >> make kernel ${kern_opts} > "${cmd_redirect}" 2>&1 >> fi >> >> build_module "${src_dir}/usr.sbin/bhyve" >> build_module "${src_dir}/usr.sbin/bhyvectl" >> build_module "${src_dir}/usr.sbin/bhyveload" >> >> if test "${with_reboot}" =3D "true"; then >> reboot >> fi >> } >> >> set -e >> set -u >> >> while test $# -gt 0; do >> case "${1-}" in >> --clean) >> clean=3D"true" >> shift >> ;; >> --reboot) >> with_reboot=3D"true" >> shift >> ;; >> --src-dir=3D*) >> src_dir=3D"${1#*=3D}" >> shift >> ;; >> --verbose) >> cmd_redirect=3D"/dev/stdout" >> shift >> ;; >> --without-bhf) >> with_bhf=3D"false" >> shift >> ;; >> --without-kernel) >> with_kernel=3D"false" >> shift >> ;; >> *) >> usage >> ;; >> esac >> done >> >> readonly clean=3D"${clean-"false"}" >> readonly cmd_redirect=3D"${cmd_redirect-"/dev/null"}" >> readonly src_dir=3D"${src_dir-"/usr/corvin-src-releng-140"}" >> echo $src_dir >> readonly with_bhf=3D"${with_bhf-"true"}" >> readonly with_kernel=3D"${with_kernel-"true"}" >> readonly with_reboot=3D"${with_reboot-"false"}" >> build >> >> >> 3) compile-bhyve-releng-140 : >> >> >> cd /usr/ >> mv src src-old >> git clone https://github.com/beckhoff/freebsd-src >> /usr/corvin-src-releng-140 >> cd /usr/corvin-src-releng-140 >> /build_branch_releng-140 origin/phab/corvink/14.0/nvidia-wip >> --without-bhf --verbose >> >> >> and run : ./compile-bhyve-releng-140 (on FreeBSD 14.0) >> >> On Tue, Mar 12, 2024 at 12:53=E2=80=AFPM Mario Marietto >> wrote: >> >>> Maybe because some patches haven't been upstreamed to 14.0 branch. >>> >>> On Tue, Mar 12, 2024 at 12:49=E2=80=AFPM Odhiambo Washington >>> wrote: >>> >>>> Actually, I am trying to figure out why they do not work after upgrade >>>> from FreeBSD 13 to 14. They used to work before. >>>> History: >>>> 1. My FreeBSD host lives in a Data Centre several kilometers from me. = I >>>> only access it via SSH. >>>> 2. My FreeBSD host does not have a keyboard, mouse, or screen attached >>>> to it. >>>> 3. I use VNC Viewer to connect to the VMs like HOST_IP:PORT >>>> >>>> >>>> On Tue, Mar 12, 2024 at 2:36=E2=80=AFPM Mario Marietto >>>> wrote: >>>> >>>>> Hello my friend Odhiambo, >>>>> >>>>> you can try to pass your keyboard and mouse to a specific USB to pci >>>>> adapter,using an USB splitter to attach both the input devices. Actua= lly >>>>> I'm using the one integrated on my nvidia gpu,RTX 2080 ti,that's : >>>>> >>>>> 02:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce >>>>> RTX 2080 Ti] >>>>> 02:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio >>>>> Controller >>>>> *02:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host >>>>> Controller* >>>>> 02:00.3 Serial bus controller: NVIDIA Corporation TU102 USB Type-C >>>>> UCSI Controller >>>>> >>>>> For sure you will add the PCI address of the board between your bhyve >>>>> parameters,for example in my case : >>>>> >>>>> -s 8:2,passthru,2/0/2 \ >>>>> >>>>> A single hardware solution would be a pcie riser which splits the pci= e >>>>> port. >>>>> >>>>> >>>>> I've asked for a good USB controller some time ago : >>>>> >>>>> >>>>> >>>>> https://forums.freebsd.org/threads/im-looking-for-a-good-usb-controll= er-3-0-4-ports-self-powered-compatible-with-freebsd.83323/ >>>>> >>>>> >>>>> If it=E2=80=99s only mouse and keyboard you could use bhyves virtio-i= nput >>>>> emulation. >>>>> >>>>> >>>>> Corvin included virtio-input support in his github. >>>>> >>>>> >>>>> He committed virtio-input to 13.2 and 14.0 upstream. >>>>> >>>>> >>>>> From =E2=80=9Cman bhyve=E2=80=9D >>>>> >>>>> >>>>> >>>>> https://www.freebsd.org/cgi/man.cgi?query=3Dbhyve&apropos=3D0&sektion= =3D8&manpath=3DFreeBSD+14.0-CURRENT&arch=3Ddefault&format=3Dhtml >>>>> ): >>>>> >>>>> >>>>> Virtio input device backends: >>>>> >>>>> >>>>> >>>>> */dev/input/eventX* >>>>> >>>>> Send input events of */dev/input/eventX* to >>>>> guest >>>>> >>>>> by VirtIO Input Interface. >>>>> >>>>> On Tue, Mar 12, 2024 at 11:39=E2=80=AFAM Odhiambo Washington < >>>>> odhiambo@gmail.com> wrote: >>>>> >>>>>> >>>>>> Even with this, my mouse pointer doesn't work: >>>>>> >>>>>> # Linux Guest >>>>>> bhyve -S -c sockets=3D2,cores=3D2,threads=3D2 -m 4G -w -H -A \ >>>>>> -s 0,hostbridge \ >>>>>> -s 3,ahci-cd,/usr/local/bhyve-vms/.iso/debian-12.5.0-amd64-DVD-1.iso= \ >>>>>> -s 4,virtio-blk,/usr/local/bhyve-vms/Debian/debian.img \ >>>>>> -s 5,virtio-net,tap4 \ >>>>>> -s 8,hda,play=3D/dev/dsp,rec=3D/dev/dsp \ >>>>>> -s 29,fbuf,tcp=3D0.0.0.0:5905,w=3D1024,h=3D768 \ >>>>>> -s 30,xhci,tablet \ >>>>>> -s 31,lpc -l com1,stdio \ >>>>>> -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \ >>>>>> debian >>>>>> >>>>>> >>>>>> >>>>>> On Wed, Feb 14, 2024 at 3:47=E2=80=AFPM Mario Marietto < >>>>>> marietto2008@gmail.com > wrote: >>>>>> >>>>>>> -s 3,fbuf,tcp=3D0.0.0.0:59 *15*,w=3D1600,h=3D9= 50 \ >>>>>>> -s 10,virtio-net,tap*15* \ >>>>>>> *vm15* < /dev/null & sleep 2 && vncviewer *0:15* >>>>>>> >>>>>>> On Wed, Feb 14, 2024 at 1:19=E2=80=AFPM Odhiambo Washington < >>>>>>> odhiambo@gmail.com> wrote: >>>>>>> >>>>>>>> Hellos, >>>>>>>> >>>>>>>> When I was still on FreeBSD 13.2-RELEASE I was able to access some >>>>>>>> Linux VMs GUI using VNC Viewer on my Windows PC. >>>>>>>> After I upgraded to 14-RELEASE, this changed: I can connect to the >>>>>>>> VMs, but the GUI desktop is frozen. The mouse cursor isn't moving = at all >>>>>>>> and the Desktop doesn't load like before. >>>>>>>> I start all my VMs the same way: >>>>>>>> >>>>>>>> bhyve -c N -m NG -w -H \ >>>>>>>> -s 0,hostbridge \ >>>>>>>> -s 4,virtio-blk,/usr/local/bhyve-vms/DISTRONAME/distroname.img \ >>>>>>>> -s 5,virtio-net,tapN \ >>>>>>>> -s 8,hda,play=3D/dev/dsp,rec=3D/dev/dsp \ >>>>>>>> -s 29,fbuf,tcp=3D0.0.0.0:59XX,w=3D1680,h=3D1050 \ >>>>>>>> -s 30,xhci,tablet \ >>>>>>>> -s 31,lpc -l com1,stdio \ >>>>>>>> -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \ >>>>>>>> distroname >>>>>>>> >>>>>>>> I would then connect to a.b.c.d:59xx using VNC Viewer and I'd get >>>>>>>> the Linux/Windows Desktop. >>>>>>>> Not anymore! >>>>>>>> >>>>>>>> Is there something I need to do to fix the issue? >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Best regards, >>>>>>>> Odhiambo WASHINGTON, >>>>>>>> Nairobi,KE >>>>>>>> +254 7 3200 0004/+254 7 2274 3223 >>>>>>>> In an Internet failure case, the #1 suspect is a constant: DNS. >>>>>>>> "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF := -) >>>>>>>> [How to ask smart questions: >>>>>>>> http://www.catb.org/~esr/faqs/smart-questions.html] >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Mario. >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Best regards, >>>>>> Odhiambo WASHINGTON, >>>>>> Nairobi,KE >>>>>> +254 7 3200 0004/+254 7 2274 3223 >>>>>> In an Internet failure case, the #1 suspect is a constant: DNS. >>>>>> "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF :-) >>>>>> [How to ask smart questions: >>>>>> http://www.catb.org/~esr/faqs/smart-questions.html] >>>>>> >>>>> >>>>> >>>>> -- >>>>> Mario. >>>>> >>>> >>>> >>>> -- >>>> Best regards, >>>> Odhiambo WASHINGTON, >>>> Nairobi,KE >>>> +254 7 3200 0004/+254 7 2274 3223 >>>> In an Internet failure case, the #1 suspect is a constant: DNS. >>>> "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF :-) >>>> [How to ask smart questions: >>>> http://www.catb.org/~esr/faqs/smart-questions.html] >>>> >>> >>> >>> -- >>> Mario. >>> >> >> >> -- >> Mario. >> > > > -- > Best regards, > Odhiambo WASHINGTON, > Nairobi,KE > +254 7 3200 0004/+254 7 2274 3223 > In an Internet failure case, the #1 suspect is a constant: DNS. > "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF :-) > [How to ask smart questions: > http://www.catb.org/~esr/faqs/smart-questions.html] > --=20 Mario. --000000000000f4baa40613796969 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
You will not go to stable.

On Tue, Mar 12, 2024 at 2:44= =E2=80=AFPM Odhiambo Washington <o= dhiambo@gmail.com> wrote:
I run 14-RELEASE and would not like to go= to -STABLE.

On Tue, Mar 12, 2024 at 3:00=E2=80=AFPM Mario Marietto <marietto2008@gmail.= com> wrote:
Try the procedure explained below to have the late= st bhyve version well patched. Lets create these script files :

1) build_branch_releng-140 :

set -e
set -u

readonly script_path=3D"$(cd "$(dirname "${0}")" &= amp;& pwd)"
readonly branch=3D"${1?Missing <branch>$(usage)}"
shift
echo $branch

cd /usr/corvin-src-releng-140
git fetch --all --prune
git checkout -f "${branch}"

${script_path}/build_releng_140 "$@"


2) build_releng_140 :


#!/bin/sh
usage() {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 cat >&2 << EOF
Usage: ${0} [--no-bhf] [--reboot] [--verbose] [--without-kernel]
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Builds bhyve
EOF
=C2=A0 =C2=A0 =C2=A0 =C2=A0 exit 1
}

build_module() {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 local _path
=C2=A0 =C2=A0 =C2=A0 =C2=A0 _path=3D"${1}"

=C2=A0 =C2=A0 =C2=A0 =C2=A0 # change to module path
=C2=A0 =C2=A0 =C2=A0 =C2=A0 cd "${_path}"

=C2=A0 =C2=A0 =C2=A0 =C2=A0 # clean module
=C2=A0 =C2=A0 =C2=A0 =C2=A0 if test "${clean}" =3D "true&quo= t;; then
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 make clean > &qu= ot;${cmd_redirect}" 2>&1
=C2=A0 =C2=A0 =C2=A0 =C2=A0 fi

=C2=A0 =C2=A0 =C2=A0 =C2=A0 # build module
=C2=A0 =C2=A0 =C2=A0 =C2=A0 make > "${cmd_redirect}" 2>&= ;1

=C2=A0 =C2=A0 =C2=A0 =C2=A0 # install module
=C2=A0 =C2=A0 =C2=A0 =C2=A0 make install > "${cmd_redirect}" }

build() {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/include"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/lib/libvmmapi&quo= t;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/sys/modules/vmm&q= uot;

=C2=A0 =C2=A0 =C2=A0 =C2=A0 # build kernel
=C2=A0 =C2=A0 =C2=A0 =C2=A0 if test "${with_kernel}" =3D "tr= ue"; then
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cd "${src_dir}= "
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 local kern_opts
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 kern_opts=3D"-= j$(sysctl -n hw.ncpu)"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if test "${wit= h_bhf}" =3D "true"; then
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 kern_opts=3D"${kern_opts} KERNCONF=3DBHF"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 fi
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if ! test "${c= lean}" =3D "true"; then
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 kern_opts=3D"${kern_opts} NO_CLEAN=3DYES"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 fi
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 make kernel ${kern_= opts} > "${cmd_redirect}" 2>&1
=C2=A0 =C2=A0 =C2=A0 =C2=A0 fi

=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/usr.sbin/bhyve&qu= ot;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/usr.sbin/bhyvectl= "
=C2=A0 =C2=A0 =C2=A0 =C2=A0 build_module "${src_dir}/usr.sbin/bhyveloa= d"

=C2=A0 =C2=A0 =C2=A0 =C2=A0 if test "${with_reboot}" =3D "tr= ue"; then
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reboot
=C2=A0 =C2=A0 =C2=A0 =C2=A0 fi
}

set -e
set -u

while test $# -gt 0; do
=C2=A0 =C2=A0 =C2=A0 =C2=A0 case "${1-}" in
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --clean)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 clean=3D"true"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --reboot)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 with_reboot=3D"true"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --src-dir=3D*)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 src_dir=3D"${1#*=3D}"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --verbose)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 cmd_redirect=3D"/dev/stdout"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --without-bhf)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 with_bhf=3D"false"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 --without-kernel) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 with_kernel=3D"false"
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 shift
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 usage
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 ;;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 esac
done

readonly clean=3D"${clean-"false"}"
readonly cmd_redirect=3D"${cmd_redirect-"/dev/null"}" readonly src_dir=3D"${src_dir-"/usr/corvin-src-releng-140"}&= quot;
echo $src_dir
readonly with_bhf=3D"${with_bhf-"true"}"
readonly with_kernel=3D"${with_kernel-"true"}"
readonly with_reboot=3D"${with_reboot-"false"}"
build


3) compile-bhyve-releng-140 :


cd /usr/
mv src src-old
git clone https://github.com/beckhoff/freebsd-src /usr/co= rvin-src-releng-140
cd /usr/corvin-src-releng-140
/build_branch_releng-140 origin/phab/corvink/14.0/nvidia-wip --without-bhf = --verbose


and run : ./compile-bhyve-releng-140 (on FreeBSD 14.0)

On Tue, Mar 12,= 2024 at 12:53=E2=80=AFPM Mario Marietto <marietto2008@gmail.com> wrote:
Maybe = because some patches haven't been upstreamed to 14.0 branch.
<= br>
On Tue,= Mar 12, 2024 at 12:49=E2=80=AFPM Odhiambo Washington <odhiambo@gmail.com> wrote:
<= div>Actually, I am trying to figure out why they do not work after upgrade = from FreeBSD 13 to 14. They used to work before.
History:
1. My FreeBSD host lives in a Data Centre several kilometers from me. I = only access it via SSH.
2. My FreeBSD host does not have a keyboa= rd, mouse, or screen attached to it.
3. I use VNC Viewer to conne= ct to the VMs like HOST_IP:PORT


On Tue, Mar 12, 2024 at 2:36= =E2=80=AFPM Mario Marietto <marietto2008@gmail.com> wrote:
Hello my friend= Odhiambo,

you can try to pass your keyboard and m= ouse to a specific USB to pci adapter,using an USB splitter to attach both = the input devices. Actually I'm using the one integrated on my nvidia g= pu,RTX 2080 ti,that's :

02:00.0 VGA compat= ible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti]
02:00.1 = Audio device: NVIDIA Corporation TU102 High Definition Audio Controller
= 02:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller=
02:00.3 Serial bus controller: NVIDIA Corporation TU102 USB Type-C = UCSI Controller

For sure you will add the PCI= address of the board between your bhyve parameters,for example in my case = :

-s 8:2,passthru,2/0/2 \

A single hardware solution would be a pcie riser w= hich splits the pcie port.


I've asked for a = good USB controller some time ago :


https://forum= s.freebsd.org/threads/im-looking-for-a-good-usb-controller-3-0-4-ports-self= -powered-compatible-with-freebsd.83323/


If it=E2=80=99s only mouse and keyboard you could us= e bhyves virtio-input emulation.


Corvin included virtio-input support in his github.<= /p>


He committed virtio-input to 13.2 and 14.0 upstream.=


From =E2=80=9Cman bhyve=E2=80=9D


https://www.freebsd.org/cgi/man.cgi?query=3Dbhyve&apropos=3D0&sek= tion=3D8&manpath=3DFreeBSD+14.0-CURRENT&arch=3Ddefault&format= =3Dhtml):


=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Virtio=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 input device backends:

=C2=A0<= /span>

=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /dev/input/eventX

=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 Send input=C2=A0=C2=A0=C2=A0 events of /dev/input/eventX to guest

=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 by=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 VirtIO Inp= ut Interface.


On Tue, Mar 12, 2024 at 11:39=E2=80=AFAM Odhiambo W= ashington <odhia= mbo@gmail.com> wrote:

Even with thi= s, my mouse pointer doesn't work:

= # Linux Guest
bhyve -S -c sockets=3D2,cores=3D2,threads=3D2 -m 4G -w -H = -A \
-s 0,hostbridge \
-s 3,ahci-cd,/usr/local/bhyve-vms/.iso/debian-= 12.5.0-amd64-DVD-1.iso \
-s 4,virtio-blk,/usr/local/bhyve-vms/Debian/deb= ian.img \
-s 5,virtio-net,tap4 \
-s 8,hda,play=3D/dev/dsp,rec=3D/dev/= dsp \
-s 29,fbuf,tcp=3D0.0.0.0:5905,w=3D1024,h=3D768 \
-s 30,xhci,tablet \
-s 31,lpc -l= com1,stdio \
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \<= br>debian


On Wed, = Feb 14, 2024 at 3:47=E2=80=AFPM Mario Marietto <marietto2008@gmail.com> wrote:
<= div>-s 3,fbuf,tcp=3D0.0.0.0:5915,w=3D1600,h=3D950 \=
-s 10,virtio-net,tap15 \
vm15<= /b> < /dev/null & sleep 2 && vncviewer 0:15
On = Wed, Feb 14, 2024 at 1:19=E2=80=AFPM Odhiambo Washington <odhiambo@gmail.com> wrote:=
Hellos,

When I was still on FreeBSD 13.2-RELEASE I was= able to access some Linux VMs GUI using=C2=A0VNC Viewer on my Windows PC.<= /div>
After I upgraded to 14-RELEASE, this changed: I can connect to th= e VMs, but the GUI desktop is frozen. The mouse cursor isn't moving at = all and the Desktop doesn't load like before.
I start all my = VMs the same way:

bhyve -c N -m NG -w -H \
-s 0= ,hostbridge \
-s 4,virtio-blk,/usr/local/bhyve-vms/DISTRONAME/distroname= .img \
-s 5,virtio-net,tapN \
-s 8,hda,play=3D/dev/dsp,rec=3D/dev/dsp= \
-s 29,fbuf,tcp=3D0.0.0.0:59XX,w=3D1680,h=3D1050 \
-s 30,xhci,table= t \
-s 31,lpc -l com1,stdio \
-l bootrom,/usr/local/share/uefi-firmwa= re/BHYVE_UEFI.fd \
distroname

I would then conn= ect to a.b.c.d:59xx using VNC Viewer and I'd get the Linux/Windows Desk= top.
Not anymore!

Is there somet= hing I need to do to fix the=C2=A0issue?


--
Best regards,<= br>Odhiambo WASHINGTON,
Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223<= /div>
=C2=A0In=C2=A0an Internet failure case, the #1 suspect is a c= onstant: DNS.
"Oh, the cruf= t.",=C2=A0egrep -v '^$|^.*#'=C2=A0=C2=AF\_(=E3=83=84)_/=C2=AF=C2= =A0:-)
[How to ask smart = questions:=C2=A0http://www.ca= tb.org/~esr/faqs/smart-questions.html]


--
Mario.


--
Best regards,
Odhiambo WASHINGTON,<= br>Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
=C2=A0In=C2=A0an Internet failure case, the #1 suspect is a constant: DNS.
= "Oh, the cruft.",=C2=A0egre= p -v '^$|^.*#'=C2=A0=C2=AF\_(=E3=83=84)_/= =C2=AF=C2=A0:-)
[How to ask smart questions:=C2=A0http://www.catb.org/~esr/faqs/smart-que= stions.html]


--
Mario.


--
Best regards,
Odhiambo WASHINGTON,<= br>Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
=C2=A0In=C2=A0an Internet failure case, the #1 suspect is a constant: DNS.
= "Oh, the cruft.",=C2=A0egre= p -v '^$|^.*#'=C2=A0=C2=AF\_(=E3=83=84)_/= =C2=AF=C2=A0:-)
[How to ask smart questions:=C2=A0http://www.catb.org/~esr/faqs/smart-que= stions.html]


--
Mario.


--
Mario.


--
Best regards,
Odhiambo WASHINGTON,<= br>Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
=C2=A0In=C2=A0an Internet failure case, the #1 suspect is a constant: DNS.
= "Oh, the cruft.",=C2=A0egre= p -v '^$|^.*#'=C2=A0=C2=AF\_(=E3=83=84)_/= =C2=AF=C2=A0:-)
[How to ask smart questions:=C2=A0http://www.catb.org/~esr/faqs/smart-que= stions.html]


--
Mario.
--000000000000f4baa40613796969--