diff -r a9ba2e80765f xen/drivers/passthrough/amd/pci_amd_iommu.c --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c Tue Feb 01 17:30:54 2011 +0100 +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c Tue Feb 01 17:32:07 2011 +0100 @@ -298,7 +298,7 @@ static int reassign_device( struct domai list_move(&pdev->domain_list, &target->arch.pdev_list); pdev->domain = target; - if ( target->max_pages > 0 ) + if ( target != dom0 && target->max_pages > 0 ) t->paging_mode = get_paging_mode(target->max_pages); /* IO page tables might be destroyed after pci-detach the last device