From owner-freebsd-virtualization@freebsd.org Tue Jun 25 16:57:59 2019 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 C54BE15D157F for ; Tue, 25 Jun 2019 16:57:59 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 57A216C11E for ; Tue, 25 Jun 2019 16:57:59 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 129A315D157E; Tue, 25 Jun 2019 16:57:59 +0000 (UTC) Delivered-To: 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 00EF215D157C for ; Tue, 25 Jun 2019 16:57:59 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 943486C11B for ; Tue, 25 Jun 2019 16:57:58 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id CBAD5F0B1 for ; Tue, 25 Jun 2019 16:57:57 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id x5PGvvbW016425 for ; Tue, 25 Jun 2019 16:57:57 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id x5PGvvgi016424 for virtualization@FreeBSD.org; Tue, 25 Jun 2019 16:57:57 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: virtualization@FreeBSD.org Subject: [Bug 205549] bhyve pci passthru stops working after guest is restarted Date: Tue, 25 Jun 2019 16:57:57 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bhyve X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Some People X-Bugzilla-Who: jhb@FreeBSD.org X-Bugzilla-Status: In Progress X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: virtualization@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.29 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: Tue, 25 Jun 2019 16:58:00 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D205549 --- Comment #15 from John Baldwin --- You should be able to just pass through the single USB controller AFAIK. The effect of the patch is somewhat hard to measure since it changes the initial value while the VM is starting before the guest starts executing.=20 While the guest is executing and MSI interrupts are enabled, that 0x400 bit should be set (it disables legacy INTx interrupts). However, to back up a bit, can you clarify how the device does not work on = the Linux guest, i.e. does Linux attach a driver to the device but not see devi= ces that are plugged in? Another thing to check is if you can use devctl to change the device driver= to xhci so that it uses the host driver and see if that works? You can use a GENERIC kernel and use 'devctl set driver -f xhci0 ppt' to change it to passthrough after boot and then use 'devctl clear driver -f ppt0' to switch= it back to xhci0 after shutting down the guest. Another test that might be easier is to boot windows after booting Linux and seeing if the controller works fine in Windows. --=20 You are receiving this mail because: You are the assignee for the bug.=