David TECHER
2012-Apr-28 12:07 UTC
Xen VGA PassThrough NVIDIA: include pci-stub case for changeset 25240
Hi, For concerned persons like me that compil Xen with PassThrough NVIDIA, modifications introduced for changeset 25240 are limited (for the moment) for pciback. I am used to biding device using pci-stub (device : Video Card). Commenting out modifications introduced for this changeset is not a good choice (I approve!). This is the only fix I found - since I am not a Xen expert - to be able to use NVIDIA patches for revision >= 25240 May it be possible to include case for devices with pci-stub usage? - 667 /* 668 static int libxl_pcidev_assignable(libxl_ctx *ctx, libxl_device_pci *pcidev) 669 { 670 libxl_device_pci *pcidevs; 671 int num, i; 672 673 pcidevs = libxl_device_pci_list_assignable(ctx, &num); 674 for (i = 0; i < num; i++) { 675 if (pcidevs[i].domain == pcidev->domain && 676 pcidevs[i].bus == pcidev->bus && 677 pcidevs[i].dev == pcidev->dev && 678 pcidevs[i].func == pcidev->func) 679 { 680 return 1; 681 } 682 } 683 return 0; 684 } 685 */ 686 int libxl__device_pci_add(libxl__gc *gc, uint32_t domid, libxl_device_pci *pcidev, int starting) 687 { 688 libxl_ctx *ctx = libxl__gc_owner(gc); 689 unsigned int orig_vdev, pfunc_mask; 690 libxl_device_pci *assigned; 691 int num_assigned, i, rc; 692 int stubdomid = 0; 693 694 rc = libxl__device_pci_setdefault(gc, pcidev); 695 if (rc) goto out; 696 697 /* if (!libxl_pcidev_assignable(ctx, pcidev)) { 698 LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "PCI device %x:%x:%x.%x is not assignable", 699 pcidev->domain, pcidev->bus, pcidev->dev, pcidev->func); 700 rc = ERROR_FAIL; 701 goto out; 702 } 703 */ --Kind regards _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users