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

Re: [PATCH] xen/arm64: flushtlb: Optimize ARM64_WORKAROUND_REPEAT_TLBI


  • To: Julien Grall <julien@xxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: "Orzel, Michal" <michal.orzel@xxxxxxx>
  • Date: Wed, 22 Apr 2026 08:53:20 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0)
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=2poxzXF0QQW3drCBiF/ropyfqrjlnZAVpDc9od2pzNQ=; b=O7NRwG2xfhRNODhfgj2nxp53kOToa22uWeNheLv4MVz1oNNOLI9mAowO/JRDwgUF+R/ID8AZBxax++mUuV2+QbdYVKMp0WlqGwZmWSYlOiUWI55cHG0SafWSzHht59AQwHbkNVNxnHRiDMYx9kWjxSGfXBtWtoqSx7FbXxNH/Z6q3Zz9ghrr1HQNI5gcQciZcYu7rTYR/HE8mG6JA2fZ7pyiWe2KGVJCzW4oFZXoxN/9vsCxF7JeBAMs+IbMlLTq5iXPnZUIi965pimgFBFoknBJBw8aBf8rL3BWn5ZLt/bmhQs/ZhprATgoQWOC4Oxd0/yCXS8rq1yknyKRTvLcZQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JKBqO6jEAD0GNV7B98jmRHr0JFY2BFJw3WzTyyozOhz5GMWqe6vuHtWlY1LJYYHKNYcwGwnEOsSR+HJkRza+2Q8HLJqMD9VDwi+m39h47kjsdWeJ4t1dguOTbrfjo+wxuDdSpW3MFoBoJpStNqjrzxw0/uxr7RehOwXwXlhUXFg+NTyrqKfZELoj9GWRjhznw14YoZZKe9G928rbaDEofzKJn8cgEu+yGsUhQuNA88abKas44xuIcpTT0XI6pc0swjvnTui/JTgsQeqsoz1XAAuO7nEtinmABmWYXZSTxSV7w4n8lJVfSHFdDb7zJCNo4ng3hC6dmL7NDXKfDFB+MQ==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=amd.com header.i="@amd.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, <Mark.Rutland@xxxxxxx>
  • Delivery-date: Wed, 22 Apr 2026 06:53:39 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>


On 21/04/2026 10:59, Julien Grall wrote:
> Hi Michal,
> 
> On 14/04/2026 09:11, Michal Orzel wrote:
>> Rework the workaround logic as follows:
>>   - add TLB_HELPER_LOCAL() to be used for local TLB ops without a
>>     workaround,
>>   - modify TLB_HELPER() workaround to use tlbi vale2is, xzr as a second
>>     TLB,
>>   - drop TLB_HELPER_VA(). It's used only by __flush_xen_tlb_one_local
>>     which is local and does not need workaround and by
>>     __flush_xen_tlb_one. In the latter case, since it's used in a loop,
>>     we don't need a workaround in the middle. Add __tlb_repeat_sync with
>>     a workaround to be used at the end after DSB and before final ISB,
>>   - TLBI VALE2IS passing XZR is used as an additional TLBI. While there is
>>     an identity mapping there, it's used very rarely. The performance
>>     impact is therefore negligible. If things change in the future, we
>>     can revisit the decision.
> 
> Can you document the use of 0 in arch/arm/include/asm/mmu/layout.h as well?
Ok, will do on commit.

> 
>>
>> Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx>
> 
> Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx>
Thanks.

~Michal




 


Rackspace

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