From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 72E1C23E25B; Thu, 2 Oct 2025 16:05:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759421135; cv=none; b=QKBNjfcP0diMKq6dYNw07LgwtxeJaVs49vJ0S5pjOMImONH6J918p9WKfcL7O5aEIlp0H3sk1nlJDTnjVDoowYH7Z7Y9cFReoCE35BMpdmKcD0Ia20KcqVgYh4U3ABDXBPIYRQcFGgUpzheikegDprrX+gD3v95TFDO8nXCXx/g= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759421135; c=relaxed/simple; bh=FSsNLddF/JQI+ng0LO9L5eWcAwBOBZsP1GwaePkWVgc=; h=Mime-Version:Content-Type:Date:Message-Id:From:Subject:Cc:To: References:In-Reply-To; b=micr77wGPFKQ1OC8GyWiAviPkXUGzmdGefxStkjA0drRZjwxxol3YYuDlegRX/eJEiHCZiltZJwa7JF5svv5YiADge1OmVzByusw9tbdJaK9sDgYRM9ad7e3e0FPNWNka8bcpvFX0G/rWyhCVtX9vzil+sbPWVoHftNhhQqe9/c= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=fVAibted; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="fVAibted" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3E3C7C4CEF4; Thu, 2 Oct 2025 16:05:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1759421135; bh=FSsNLddF/JQI+ng0LO9L5eWcAwBOBZsP1GwaePkWVgc=; h=Date:From:Subject:Cc:To:References:In-Reply-To:From; b=fVAibted+YQXWHCfm/zSBcYzpFNyr92F86zW7Cr6T6/cvFzUIVMeVracte/91vNNn HrjXw3CZUbZN15Bh5Q11fW+0af71GqAUEVc0nYwYW/saJ5VnF3siAPz3vIAz/E5yjm 315xGgkNRU2m1r6yjrMQG6AOgbHMkFZQMMjLZw3fMDxjOQ9Ij51wOJ1LOWWVodd9xI MEkaKwHZIUP5e9nWkJTErq5sKMNicg1SEvELbbFeZupHztW65Cn4vjbA760w+f20Nw ozI0Oi3/XHI1VS00dVwVKamy0YuX1wfb9pa2kDayIQm7QBBK0PaWZ0MJCt3AXBIjup fsZXTqfr6+OGA== Precedence: bulk X-Mailing-List: linux-pci@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Thu, 02 Oct 2025 18:05:28 +0200 Message-Id: From: "Danilo Krummrich" Subject: Re: [PATCH v2 1/2] rust: pci: skip probing VFs if driver doesn't support VFs Cc: "John Hubbard" , "Alexandre Courbot" , "Joel Fernandes" , "Timur Tabi" , "Alistair Popple" , "Zhi Wang" , "Surath Mitra" , "David Airlie" , "Simona Vetter" , "Alex Williamson" , "Bjorn Helgaas" , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , "Miguel Ojeda" , "Alex Gaynor" , "Boqun Feng" , "Gary Guo" , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , "Benno Lossin" , "Andreas Hindborg" , "Alice Ryhl" , "Trevor Gross" , , , , "LKML" To: "Jason Gunthorpe" References: <20251002020010.315944-1-jhubbard@nvidia.com> <20251002020010.315944-2-jhubbard@nvidia.com> <20251002121110.GE3195801@nvidia.com> <20251002123921.GG3195801@nvidia.com> <20251002135600.GB3266220@nvidia.com> <20251002152346.GA3298749@nvidia.com> In-Reply-To: <20251002152346.GA3298749@nvidia.com> On Thu Oct 2, 2025 at 5:23 PM CEST, Jason Gunthorpe wrote: > This is not what I've been told, the VF driver has significant > programming model differences in the NVIDIA model, and supports > different commands. Ok, that means there are some more fundamental differences between the host= PF and the "VM PF" code that we have to deal with. But that doesn't necessarily require that the VF parts of the host have to = be in nova-core as well, i.e. with the information we have we can differentiate between PF, VF and PF in the VM (indicated by a device register). > If you look at the VFIO driver RFC it basically does no mediation, it > isn't intercepting MMIO - the guest sees the BARs directly. Most of > the code is "profiling" from what I can tell. Some config space > meddling. Sure, there is no mediation in that sense, but it needs quite some setup regardless, no? I thought there is a significant amount of semantics that is different betw= een booting the PF and the VF on the host. Also, the idea was to use a layered approach, i.e. let nova-core serve as a= n abstraction layer, where the DRM and VFIO parts can be layered on top of. Are you suggesting to merge vGPU into nova-core? (The VF specific firmware interfaces, should be abstracted in nova-core, so= , technically, we will have some vGPU specific code in nova-core.)