From: Cédric Bosdonnat Date: Thu, 23 Apr 2015 07:32:16 +0000 (+0200) Subject: Allow access to vendor and device file for PCI device passthrough X-Git-Tag: v1.2.15-rc1~57 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28d599c5130ee102d5174c01d59eeb14a75a3747;p=thirdparty%2Flibvirt.git Allow access to vendor and device file for PCI device passthrough For some devices, the $PCIDIR/vendor and $PCIDIR/device need to be read. Iterate over them to get them as well in the the generated apparmor profile. --- diff --git a/src/util/virpci.c b/src/util/virpci.c index 512e8399eb..cf2a253b86 100644 --- a/src/util/virpci.c +++ b/src/util/virpci.c @@ -1955,11 +1955,13 @@ int virPCIDeviceFileIterate(virPCIDevicePtr dev, while ((direrr = virDirRead(dir, &ent, pcidir)) > 0) { /* Device assignment requires: * $PCIDIR/config, $PCIDIR/resource, $PCIDIR/resourceNNN, - * $PCIDIR/rom, $PCIDIR/reset + * $PCIDIR/rom, $PCIDIR/reset, $PCIDIR/vendor, $PCIDIR/device */ if (STREQ(ent->d_name, "config") || STRPREFIX(ent->d_name, "resource") || STREQ(ent->d_name, "rom") || + STREQ(ent->d_name, "vendor") || + STREQ(ent->d_name, "device") || STREQ(ent->d_name, "reset")) { if (virAsprintf(&file, "%s/%s", pcidir, ent->d_name) < 0) goto cleanup;