From nobody Mon Jul 24 05:30:36 2023 X-Original-To: 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 4R8TK30tv7z4nsFX for ; Mon, 24 Jul 2023 05:30:47 +0000 (UTC) (envelope-from shuriku@shurik.kiev.ua) Received: from mail.flex-it.com.ua (mail.flex-it.com.ua [193.239.74.7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4R8TK15kr2z42Ny for ; Mon, 24 Jul 2023 05:30:45 +0000 (UTC) (envelope-from shuriku@shurik.kiev.ua) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of shuriku@shurik.kiev.ua designates 193.239.74.7 as permitted sender) smtp.mailfrom=shuriku@shurik.kiev.ua; dmarc=none Received: from 93.183.208.50.ipv4.datagroup.ua ([93.183.208.50] helo=[192.168.200.125]) by mail.flex-it.com.ua with esmtpsa (TLS1.3) tls TLS_AES_128_GCM_SHA256 (Exim 4.96 (FreeBSD)) (envelope-from ) id 1qNo9U-0002IJ-1b for virtualization@freebsd.org; Mon, 24 Jul 2023 08:30:36 +0300 Content-Type: multipart/alternative; boundary="------------RcVjmcgMo8z0gHrToaYc4Z2H" Message-ID: <4d91b35d-6530-cd1b-770b-096b71f73060@shurik.kiev.ua> Date: Mon, 24 Jul 2023 08:30:36 +0300 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 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: Virtual GPU for FreeBSD as guest virtualized with qemu / kvm -- best alternative ? Cirrus ? Content-Language: uk-UA To: virtualization@freebsd.org References: From: Oleksandr Kryvulia In-Reply-To: X-ACL-Warn: SPF failed. 93.183.208.50 is not allowed to send mail from shurik.kiev.ua. X-Spamd-Result: default: False [-1.28 / 15.00]; URI_COUNT_ODD(1.00)[9]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-0.999]; NEURAL_HAM_LONG(-0.98)[-0.977]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[multipart/alternative,text/plain,multipart/related]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[virtualization@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:35297, ipnet:193.239.72.0/22, country:UA]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~,4:~,5:~]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; RCVD_TLS_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_NONE(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DMARC_NA(0.00)[shurik.kiev.ua]; RCVD_COUNT_TWO(0.00)[2] X-Rspamd-Queue-Id: 4R8TK15kr2z42Ny X-Spamd-Bar: - This is a multi-part message in MIME format. --------------RcVjmcgMo8z0gHrToaYc4Z2H Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit 23.07.23 17:27, Mario Marietto пише: > > Hello to everyone. > > > I would like to virtualize FreeBSD on Windows 11 with qemu-kvm (for > Windows). I've end up with the following parameters which are working : > > > |I:\OS\qemu\Linux\qemu\qemu-system-x86_64w.exe -accel whpx -machine > q35 \ -cpu > Westmere,vendor=GenuineIntel,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check > \ -m 8G -vga qxl -audiodev dsound,id=snd0 -device ich9-intel-hda > -device \ hda-duplex,audiodev=snd0 \ -hda > "I:\OS\ISO\FreeBSD\FreeBSD-13.2-RELEASE-amd64-disc1.iso" \ -hdb > "I:\OS\qemu\Linux\FreeBSD.img" -rtc base=localtime \ -device > nec-usb-xhci,id=xhci -device usb-tablet -device usb-kbd \ -global > nec-usb-xhci.msi=off -smbios type=2 -nodefaults -netdev user,id=net0 \ > -device virtio-net-pci,netdev=net0,id=net0,mac=52:54:00:11:22:33 \ > -device ich9-ahci,id=sata -bios > "I:\OS\qemu\Linux\OSX-KVM-master\OVMF_combined.fd"| > > > Now I'm trying to configure Xorg and the xfce4 desktop environment. > Since I'm using qemu,there are a lot of display devices available to > try,but I don't know which one is good for FreeBSD. In the website > below there is a good list of all options available : > > > https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/ > > > > On FreeBSD I have installed the package drm-kmod and it suggests to me > to add to the rc.conf file one of these parameters : > > > 1. > > for amdgpu : kld_list="amdgpu" > > 2. > > for intel : kld_list="i915kms" > > 3. > > for radeonkms : kld_list="radeonkms" > > > qemu does not cover any of those. I don't know which option is decent > for my case. I would like to try with the cirrus display driver. Maybe > this one : > > > https://www.freshports.org/x11-drivers/xf86-video-cirrus/ > > > |So,I have installed this package : pkg install xf86-video-cirrus | > I've rebooted and I have changed |-vga qxl to -vga cirrus| > > FreeBSD recognized it at 0:1:0 > > > 2023-07-23 15_21_33-QEMU.png > > I have created xorg.conf with this content : > > |Section "Device" Identifier "Device0" Driver "cirrus" BusID > "PCI:0:1:0" Screen 0 EndSection| > > error : no screens found. > This is the reason why it does not work : > > > 2023-07-23 15 49 44.png > > but the module seems to be there : > > |cd /usr/local/lib/xorg/modules/drivers/ ls *cirrus_drv.so* ; > modesetting_drv.so ; scfb_drv.so ; vesa_drv.so ;| > > What should I do ? > > We have x11-drivers/xf86-video-qxl in our ports, try it with qxl video adapter. --------------RcVjmcgMo8z0gHrToaYc4Z2H Content-Type: multipart/related; boundary="------------OrOE5HYEv4M0nuBJsaAjeJ7V" --------------OrOE5HYEv4M0nuBJsaAjeJ7V Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit 23.07.23 17:27, Mario Marietto пише:

Hello to everyone.


I would like to virtualize FreeBSD on Windows 11 with qemu-kvm (for Windows). I've end up with the following parameters which are working :


I:\OS\qemu\Linux\qemu\qemu-system-x86_64w.exe -accel whpx -machine q35 \
-cpu Westmere,vendor=GenuineIntel,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \
-m 8G -vga qxl -audiodev dsound,id=snd0 -device ich9-intel-hda -device \
hda-duplex,audiodev=snd0 \
-hda "I:\OS\ISO\FreeBSD\FreeBSD-13.2-RELEASE-amd64-disc1.iso" \
-hdb "I:\OS\qemu\Linux\FreeBSD.img" -rtc base=localtime \
-device nec-usb-xhci,id=xhci -device usb-tablet -device usb-kbd \
-global nec-usb-xhci.msi=off -smbios type=2 -nodefaults -netdev user,id=net0 \
-device virtio-net-pci,netdev=net0,id=net0,mac=52:54:00:11:22:33 \
-device ich9-ahci,id=sata -bios "I:\OS\qemu\Linux\OSX-KVM-master\OVMF_combined.fd"


Now I'm trying to configure Xorg and the xfce4 desktop environment. Since I'm using qemu,there are a lot of display devices available to try,but I don't know which one is good for FreeBSD. In the website below there is a good list of all options available :


https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/


On FreeBSD I have installed the package drm-kmod and it suggests to me to add to the rc.conf file one of these parameters :


  1. for amdgpu : kld_list="amdgpu"

  2. for intel : kld_list="i915kms"

  3. for radeonkms : kld_list="radeonkms"


qemu does not cover any of those. I don't know which option is decent for my case. I would like to try with the cirrus display driver. Maybe this one :


https://www.freshports.org/x11-drivers/xf86-video-cirrus/


So,I have installed this package : pkg install xf86-video-cirrus

I've rebooted and I have changed -vga qxl to -vga cirrus

FreeBSD recognized it at 0:1:0


2023-07-23 15_21_33-QEMU.png

I have created xorg.conf with this content :

Section "Device"
Identifier "Device0"
Driver "cirrus"
BusID "PCI:0:1:0"
Screen 0
EndSection

error : no screens found.
 
This is the reason why it does not work :


2023-07-23 15 49 44.png

but the module seems to be there :

cd /usr/local/lib/xorg/modules/drivers/
ls
cirrus_drv.so ; modesetting_drv.so ; scfb_drv.so ; vesa_drv.so ;

What should I do ?



We have x11-drivers/xf86-video-qxl in our ports, try it with qxl video adapter.
--------------OrOE5HYEv4M0nuBJsaAjeJ7V Content-Type: image/png; name="2023-07-23 15_21_33-QEMU.png" Content-Disposition: inline; filename="2023-07-23 15_21_33-QEMU.png" Content-Id: Content-Transfer-Encoding: base64 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 --------------OrOE5HYEv4M0nuBJsaAjeJ7V Content-Type: image/png; name="2023-07-23 15 49 44.png" Content-Disposition: inline; filename="2023-07-23 15 49 44.png" Content-Id: Content-Transfer-Encoding: base64 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 9cYhmQAAAABJRU5ErkJggg== --------------OrOE5HYEv4M0nuBJsaAjeJ7V-- --------------RcVjmcgMo8z0gHrToaYc4Z2H--