* [PATCH 5 of 6 V6] libxl: bind virtual bdf to physical bdf after device assignment
2012-03-08 13:21 [PATCH 0 of 6 V6] amd iommu: support ats/gpgpu passthru on iommuv2 systems Wei Wang
@ 2012-03-08 13:21 ` Wei Wang
0 siblings, 0 replies; 2+ messages in thread
From: Wei Wang @ 2012-03-08 13:21 UTC (permalink / raw)
To: Ian.Jackson, Ian.Campbell, JBeulich, keir; +Cc: xen-devel
# HG changeset patch
# User Wei Wang <wei.wang2@amd.com>
# Date 1331210222 -3600
# Node ID 0a1de2dea27370d71d2572869d363d9e5833648e
# Parent d3c4ac0b7cc771ce9639cf3f9f14c0e10d85784d
libxl: bind virtual bdf to physical bdf after device assignment
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Acked-by: Ian Jackson<ian.jackson@eu.citrix.com>
diff -r d3c4ac0b7cc7 -r 0a1de2dea273 tools/libxl/libxl_pci.c
--- a/tools/libxl/libxl_pci.c Thu Mar 08 13:36:59 2012 +0100
+++ b/tools/libxl/libxl_pci.c Thu Mar 08 13:37:02 2012 +0100
@@ -720,6 +720,13 @@ out:
LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_assign_device failed");
return ERROR_FAIL;
}
+ if (LIBXL__DOMAIN_IS_TYPE(gc, domid, HVM)) {
+ rc = xc_domain_bind_pt_bdf(ctx->xch, domid, 0, pcidev->vdevfn, pcidev->domain, pcidev_encode_bdf(pcidev));
+ if ( rc ) {
+ LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_domain_bind_pt_bdf failed");
+ return ERROR_FAIL;
+ }
+ }
}
if (!starting)
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH 5 of 6 V6] libxl: bind virtual bdf to physical bdf after device assignment
@ 2012-09-26 14:47 Wei Wang
0 siblings, 0 replies; 2+ messages in thread
From: Wei Wang @ 2012-09-26 14:47 UTC (permalink / raw)
To: xen-devel@lists.xensource.com, Ian Jackson, Ian Campbell,
Keir Fraser, Jan Beulich
[-- Attachment #1: Type: text/plain, Size: 2 bytes --]
[-- Attachment #2: 0005-libxl-bind-virtual-bdf-to-physical-bdf-after-device-.patch --]
[-- Type: text/plain, Size: 1487 bytes --]
From 307dec80d03b1a7ec7048e35ca9da2f9ec942066 Mon Sep 17 00:00:00 2001
From: Wei Wang <wei.wang2@amd.com>
Date: Wed, 26 Sep 2012 11:47:55 +0200
Subject: [PATCH 5/6] libxl: bind virtual bdf to physical bdf after device assignment
Signed-off-by: Wei Wang <wei.wang2@amd.com>
---
tools/libxl/libxl_pci.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/tools/libxl/libxl_pci.c b/tools/libxl/libxl_pci.c
index ff447e7..ecd5e2b 100644
--- a/tools/libxl/libxl_pci.c
+++ b/tools/libxl/libxl_pci.c
@@ -858,8 +858,9 @@ static int do_pci_add(libxl__gc *gc, uint32_t domid, libxl_device_pci *pcidev, i
{
libxl_ctx *ctx = libxl__gc_owner(gc);
int rc, hvm = 0;
+ libxl_domain_type type = libxl__domain_type(gc, domid);
- switch (libxl__domain_type(gc, domid)) {
+ switch (type) {
case LIBXL_DOMAIN_TYPE_HVM:
hvm = 1;
if (libxl__wait_for_device_model(gc, domid, "running",
@@ -960,6 +961,13 @@ out:
LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_assign_device failed");
return ERROR_FAIL;
}
+ if (type == LIBXL_DOMAIN_TYPE_HVM) {
+ rc = xc_domain_bind_pt_bdf(ctx->xch, domid, 0, pcidev->vdevfn, pcidev->domain, pcidev_encode_bdf(pcidev));
+ if ( rc ) {
+ LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_domain_bind_pt_bdf failed");
+ return ERROR_FAIL;
+ }
+ }
}
if (!starting)
--
1.7.4
[-- Attachment #3: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-09-26 14:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-26 14:47 [PATCH 5 of 6 V6] libxl: bind virtual bdf to physical bdf after device assignment Wei Wang
-- strict thread matches above, loose matches on Subject: below --
2012-03-08 13:21 [PATCH 0 of 6 V6] amd iommu: support ats/gpgpu passthru on iommuv2 systems Wei Wang
2012-03-08 13:21 ` [PATCH 5 of 6 V6] libxl: bind virtual bdf to physical bdf after device assignment Wei Wang
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.