[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



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.