From owner-freebsd-virtualization@freebsd.org Thu Aug 9 17:30:08 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 775D5106DAE7 for ; Thu, 9 Aug 2018 17:30:08 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mail.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 225457F807 for ; Thu, 9 Aug 2018 17:30:08 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-2.local (ralph.baldwin.cx [66.234.199.215]) by mail.baldwin.cx (Postfix) with ESMTPSA id BF06F10B707; Thu, 9 Aug 2018 13:30:06 -0400 (EDT) Subject: Re: Passthrough not working with OpenBSD nor NetBSD To: Farid Joubbi References: Cc: freebsd-virtualization@freebsd.org From: John Baldwin Message-ID: Date: Thu, 9 Aug 2018 10:30:05 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (mail.baldwin.cx); Thu, 09 Aug 2018 13:30:07 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.99.2 at mail.baldwin.cx X-Virus-Status: Clean X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.27 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: Thu, 09 Aug 2018 17:30:08 -0000 They may implement INTx interrupts for pass-through perhaps. INTx are a lot bigger pain to emulate since there isn't a standard way in PCI to determine if an interrupt is pending (and you need that to simulate a level-triggered interrupt like INTx). I think very recent revisions of PCI did add a new bit to test that in the PCI status register, but it is in a new enough version of PCI that any compliant devices would also support MSI anyway. On 8/9/18 10:07 AM, Farid Joubbi wrote: > How does KVM and VMware solve that? > I haven't tried PCI passthrough with them, but I assume that it works..? > > On Thu, Aug 9, 2018, 18:24 John Baldwin > wrote: > > On 8/8/18 11:08 AM, Farid Joubbi wrote: > > That's what I also thought, but it's not anything I can force it to do, is it? Isn't it supposed to detect the MSI interrupt compatibility automatically? > > Apparently Open/Net always try to setup INTx before trying MSI even if they > won't use INTx per the commit log in revision 280725.  We could perhaps try > to provide a "fake" INTx interrupt that doesn't work, but I'll have to think > about how to implement that. > > -- > John Baldwin > -- John Baldwin