[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PCI pass-through vs PoD


  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Mon, 13 Sep 2021 11:02:24 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.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; bh=sTR8Hjj3qMeZkeQi25B8ABEAW7smRJgU/E3oAa0eI4k=; b=PR1tyLS+GUvoeLreyhefD4FzLw9yyicn+7JLXt6yWCbaUb8jdW5VyVPCCpXo6byGn96BuFJMee2S9co12MepQIBkH7fI/U0vxSxuGFSS7/hcruzBJP+/yVW7pi1yqxEkTLLeqKRkH1cyW03PFTbRWz3flAyk97gvxOLt29cOGDru9M6MvxZ1GI+F+kydDQBVYn7Mfd+7aw2GDK1xebbHMw0JK4M9PDpqmSJQIOHKEyaosWo8NsM/9XTgpB6w8MywxNGnmTiiOHRPQGn58iuXddkH2KpoX8WD/LIBQp2bSZICjbwviKiE5Mq/Y3YlRwX/W6ay0GkiwyDyQvaipINaQg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IntaMR7OXOUXuyoqkmznVO0K4+VZ0fqUEq+0oz6gmxN5ExFe95NLM9UEPk0aR07muBu3PqulLOcLCC1rWBYC4sFYRW4zS6+8CMIK/1UFuD5nI+xWCHrqk1cQFRAJvTkInVO3GyUYD7228X7zYENphW84DFfuvB6NffDF/0a3FjXfaNQ6B2OzS4kcHvrrqJtIURgQ9qX/JtWyHdkr0RfgF32pk2o7ZBt0nZm0CW4bJ80y/mYOe4EUaGIzjxl3npZcQ8eGYCkyaktFlRgPoIFG5V+9Nms4B+5GcWZc7wXq8l+bDATTAljErni3wxCS2ac4zwadmXlfJFt8snj8t0IOug==
  • Authentication-results: xen.org; dkim=none (message not signed) header.d=none;xen.org; dmarc=none action=none header.from=suse.com;
  • Cc: Anthony Perard <anthony.perard@xxxxxxxxxx>, Ian Jackson <iwj@xxxxxxxxxxxxxx>, Paul Durrant <paul@xxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Mon, 13 Sep 2021 09:02:35 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Hello,

libxl__domain_config_setdefault() checks whether PoD is going to be
enabled and fails domain creation if at the same time devices would get
assigned. Nevertheless setting up of IOMMU page tables is allowed.
However, when later assigning a device to a domain which has IOMMU page
tables, libxl__device_pci_add() does not appear to be concerned of PoD:
- xc_test_assign_device() / XEN_DOMCTL_test_assign_device only check the
  device for being available to assign,
- libxl__device_pci_setdefault() is only concerned about the RDM policy,
- other functions called look to not be related to such checking at all.

IMO assignment should fail if pod.count != pod.entry_count, and all PoD
entries should be resolved otherwise (whether explicitly by the
hypervisor or through some suitable existing hypercalls - didn't check
yet whether there are any reasonable candidates - by the tool stack is
secondary).

Jan




 


Rackspace

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