Hi Eric On Wed, 18 Nov 2020 12:21:43, Eric Auger wrote: >@@ -1710,7 +1710,11 @@ static void arm_smmu_tlb_inv_context(void *cookie) > * insertion to guarantee those are observed before the TLBI. Do be > * careful, 007. > */ >- if (smmu_domain->stage == ARM_SMMU_DOMAIN_S1) { >+ if (ext_asid >= 0) { /* guest stage 1 invalidation */ >+ cmd.opcode = CMDQ_OP_TLBI_NH_ASID; >+ cmd.tlbi.asid = ext_asid; >+ cmd.tlbi.vmid = smmu_domain->s2_cfg.vmid; >+ } else if (smmu_domain->stage == ARM_SMMU_DOMAIN_S1) { Found a problem here, the cmd for guest stage 1 invalidation is built, but it is not delivered to smmu.