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

Re: [Xen-devel] Xen-unstable: AMD-Vi: update_paging_mode Try to access pdev_list without aquiring pcidevs_lock.



On 28.10.2019 11:32, Sander Eikelenboom wrote:
> While testing the latest xen-unstable and starting an HVM guest with 
> pci-passtrough on my AMD machine,
> my eye catched the following messages in xl dmesg I haven't seen before:
> 
> (XEN) [2019-10-28 10:23:16.372] AMD-Vi: update_paging_mode Try to access 
> pdev_list without aquiring pcidevs_lock.

Unfortunately this sits on the map/unmap path, and hence the
violator is far up one of the many call chains. Therefore I'd
like to ask that you rebuild and retry with the debugging
patch below. In case you observe multiple different call
trees, post them all please.

Jan

--- unstable.orig/xen/drivers/passthrough/amd/iommu_map.c
+++ unstable/xen/drivers/passthrough/amd/iommu_map.c
@@ -331,9 +331,12 @@ static int update_paging_mode(struct dom
         hd->arch.paging_mode = level;
         hd->arch.root_table = new_root;
 
-        if ( !pcidevs_locked() )
+        if ( iommu_debug && !pcidevs_locked() )
+        {
             AMD_IOMMU_DEBUG("%s Try to access pdev_list "
                             "without aquiring pcidevs_lock.\n", __func__);
+            dump_execution_state();
+        }
 
         /* Update device table entries using new root table and paging mode */
         for_each_pdev( d, pdev )

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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