From owner-freebsd-virtualization@freebsd.org Fri May 11 15:25:20 2018 Return-Path: Delivered-To: freebsd-virtualization@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DDDBFDA407 for ; Fri, 11 May 2018 15:25:20 +0000 (UTC) (envelope-from felix@palmen-it.de) Received: from mail.palmen-it.de (stef.palmen-it.de [84.38.64.206]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A33247F11C for ; Fri, 11 May 2018 15:25:19 +0000 (UTC) (envelope-from felix@palmen-it.de) Received: from nexus.home.palmen-it.de ([192.168.99.2]) by mail.palmen-it.de with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84) (envelope-from ) id 1fH9v3-00005G-2o for freebsd-virtualization@freebsd.org; Fri, 11 May 2018 15:25:17 +0000 To: freebsd-virtualization@freebsd.org From: Felix Palmen Subject: bhyve: passthrough of PCIe device without MSI possible? Message-ID: <7167ea46-ee07-8ffa-615e-0f3d3eb92e64@palmen-it.de> Date: Fri, 11 May 2018 17:26:41 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 May 2018 15:25:20 -0000 I have the following PCIe card on a host running 11.1-RELEASE: | ppt0@pci0:5:0:0: class=0x078000 card=0x00011b74 chip=0x08101b74 rev=0x14 hdr=0x00 | vendor = 'OpenVox Communication Co. Ltd.' | class = simple comms it doesn't support MSI according to `pciconf -lbc`: | ppt0@pci0:5:0:0: class=0x078000 card=0x00011b74 chip=0x08101b74 rev=0x14 hdr=0x00 | bar [10] = type Memory, range 32, base 0xdfe00000, size 524288, enabled Trying to pass this card to a guest using `vm-bhyve` gives me the following in `bhyve.log`: | bhyve: failed to initialize MSI for PCI 5/0/0 and this in `vm-byve.log`: | [bhyve options: -c 2 -m 2G -Hwl bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd -U 9f2546f5-5464-11e8-8b52-d05099c0f275 -S] | [bhyve devices: -s 0,hostbridge -s 31,lpc -s 4:0,virtio-blk,/dev/zvol/zroot/vm/pbx/disk0 -s 5:0,virtio-net,tap2,mac=58:9c:fc:00:d7:6b -s 6:0,passthru,5/0/0 -s 7:0,fbuf,tcp=0.0.0.0:5900] | [bhyve console: -l com1,/dev/nmdm0A] | [bhyve iso device: -s 3:0,ahci-cd,/var/vm/.config/null.iso] | starting bhyve (run 1) | bhyve exited with status 1 Now .. is it actually possible to pass such a device to a bhyve guest? From the code comment here: I assumed MSI would be "emulated" if necessary? TIA, Felix -- Dipl.-Inform. Felix Palmen ,.//.......... {web} http://palmen-it.de {jabber} [see email] ,//palmen-it.de {pgp public key} http://palmen-it.de/pub.txt // """"""""""" {pgp fingerprint} ED9B 62D0 BE39 32F9 2488 5D0C 8177 9D80 5ECF F683