[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC,FUTURE 0/3] Make vSBDF configurable by toolstack
- To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
- Date: Wed, 13 Dec 2023 23:44:56 +0000
- Accept-language: en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cwOLHmt/xVQKtVQ7dFIiwMzlKRmuQ+IjFFkVQYwTpbE=; b=kCbpnkHRUCGXnEJ9edKwrzP1XcWZH/2D8IgXyxd7CJxmH4WuidUGtADIeKVvOBQWtAGnSSurbGFKF9fCLNtVuKoTvvazu6qXvycJYh0cfeRaB0D6TMDQfGx1qOHLs85KEtWVPbOIFrLp9fla7QOLCuB7GmANCNax3ujb/2BsWhS7SvrSf9Sjryq+hRK2i8jf5ZXCzaNJzCz7ryq9x8WvG4WjTZEiS38zTuKqQDNSB6/0xsEggL0MWgBobuDuoSfvckLrYeMEMI1m0gavM3XVfEuMVF2RJzYltQqSjhEuD/bJvzdCqxxaEU5P9BEAmgJeOUfx841XMAXxCW7EbXKOMg==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K6DQwe66U3SwrXOqtVQYC4Gy9syTXVyPFNTEWnalKLwEIRdov8WXQJ+AaltvjBbqS6cVYVv+h6w8HRDumOlB31glcxR8ur5dgMLrARfcBycAqJLvB/Gl96DyMGI6rumgyTIGg1oJsIWY5aFEjT8fHvad537nbesHIHzIeQzlR6j+wZe+Xy1yk45VvEOivOuWwdMP4Vastx69OB7LgkM788pMMNlDiDu6/gQk//sov2LAn4zPq9oh1cfVv6F3mG69rkx+B32dbMkHPPOjOfy7asewHbqCkuSKRxAz5ABS16STORu6NRjYWv20TuwBheRbKqGYsuji4SivKEIfcSb7Lw==
- Cc: Stewart Hildebrand <stewart.hildebrand@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Wei Liu <wl@xxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Paul Durrant <paul@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Christian Lindig <christian.lindig@xxxxxxxxxx>, David Scott <dave@xxxxxxxxxx>, Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>
- Delivery-date: Wed, 13 Dec 2023 23:45:23 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Thread-index: AQHaLh5gqP9om/bdnUuJG4CQUapQdQ==
- Thread-topic: [RFC,FUTURE 0/3] Make vSBDF configurable by toolstack
This patch series is a follow up for the dicsussion at [1].
It adds ability for toolstack to chose Device part of SBDF for a PCI
device when passing it to DomU. First and last patches are quite
straightforward, but the second one ("tools: libxc: add virtual_sbdf
parameter to xc_assign_device") changes API of libxc, which is big
no-no, so it is just a starting point for a discussion. What is the
best way to do this?
Another topic for discussion is the first patch ("domctl/pci: add
ability to provide/request a virtual SBDF"). It extends existing
domctl for assigning devices, which is fine for this use case. But we
also discussed use case of virtio-pci devices, for which we want to
allocate/request vSBDFs as well. Problem is that we cant't use
assign_device call for this because there is no physical device which
can be assigned. Probably we will need another domctl - specifically
for allocating vSBDFs. But then there would be two domctls that are
capable of allocating vSBDFs: assign_device and this new call... So
yeah, I am open for suggestions.
[1] https://lore.kernel.org/all/d6a58e73-da51-40f1-a2f7-576274945585@xxxxxxx/
Volodymyr Babchuk (3):
domctl/pci: add ability to provide/request a virtual SBDF
tools: libxc: add virtual_sbdf parameter to xc_assign_device
tools: libxl: use "vslot" parameter when assigning a PCI device
tools/include/xenctrl.h | 1 +
tools/libs/ctrl/xc_domain.c | 13 +++++++++-
tools/libs/light/libxl_pci.c | 9 +++++--
tools/ocaml/libs/xc/xenctrl_stubs.c | 2 +-
tools/python/xen/lowlevel/xc/xc.c | 2 +-
xen/drivers/passthrough/pci.c | 17 ++++++++-----
xen/drivers/vpci/vpci.c | 38 +++++++++++++++++++++++------
xen/include/public/domctl.h | 9 ++++++-
xen/include/xen/vpci.h | 4 +--
9 files changed, 73 insertions(+), 22 deletions(-)
--
2.43.0
|