On 18.04.2024 13:57, Teddy Astie wrote: > --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c > +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c > @@ -305,6 +305,12 @@ static int __init cf_check iov_detect(void) > if ( !iommu_enable && !iommu_intremap ) > return 0; > > + if ( unlikely(!cpu_has_cx16) ) > + { > + printk("AMD-Vi: CPU doesn't support CMPXCHG16B, disabling\n"); > + return -ENODEV; > + }
One additional nit: Here you neatly have just AMD-Vi: as a prefix for the log message. Why ... > @@ -2630,6 +2598,15 @@ static int __init cf_check vtd_setup(void) > int ret; > bool reg_inval_supported = true; > > + if ( unlikely(!cpu_has_cx16) ) > + { > + printk(XENLOG_ERR VTDPREFIX > + "IOMMU: CPU doesn't support CMPXCHG16B, disabling\n"); > + > + ret = -ENODEV; > + goto error; > + } ... both VTDPREFIX and "IOMMU:" here? Jan