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

Re: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly allocated ITT


  • To: Julien Grall <julien@xxxxxxx>
  • From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
  • Date: Mon, 25 Sep 2023 19:00:04 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Q/OmtigUtL1lxpsBRCVJyMs0Iq3fnMq4OK68yx0cMR8=; b=Dv56OZ2XMB72srEMt8/ismsPPwqGuQSFxcoqY91Vjc4zGEr7+gTTm59YkdRb/D4D/89rH3LtJ6alKGG+jFQ0d4XWmBT2wMU5fak/eovuMAGbiI6M6sRV52maHk07lzniwvtF1TBUOgwYCuh1LgsJhekaJf2MYPsZ7T0IRszpcu0kIUQaH4aUOghKWrcqHjp4xy7sSqO1Nn87BU3x/xa7wJJalbEVCuPIyQxnJJOBWOu2V/x9b+Roo0X6jSGN7OgXSlSWe4pwPnMNZCvP3YOcb/QVWW2v/eMLRWMbZBw5uH0Yk8y1K0PTG1fv5BzL250vil5LguIPSEHcFCjaTkRqCA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yysm/82hI7XzKvnTv0h7sHT1Hfcej1SHuxuzoK7bEihCsCF9p9evDMdGLxrN+pAItrzvxlQmOqrguo1rlF2rgBMlZrV+YJtYZDq0gEZDR3amOcXDEDc/ACNAcrslGwaSHaq2/HGBsn5w16wKNZDI84pDRx/IsO76ybZ0so7vnmFnBNIx1xcQJIoshQgIMvVj6nRnTdommyauf1O5yaIuRBEMRJw95q8C7z7xlYHd5tRrxxEV65OTmi45/pEm9eB8QsJUTWQZ4OQ0OxGJ8QbbHU0ebzR4jk0xk/iteadtgdYzWs1u7cMgoCmvD0VNLZJ/RxD2Sa5TTrkEpwDy1g1Qcg==
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Stewart Hildebrand <stewart.hildebrand@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Henry Wang <Henry.Wang@xxxxxxx>
  • Delivery-date: Mon, 25 Sep 2023 19:00:39 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHZ7aPwbLIfEqCF/k2PKMU6gFIgCrAr4kMAgAAG4gA=
  • Thread-topic: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly allocated ITT

Hi Julien, Henry,

Julien Grall <julien@xxxxxxx> writes:

> Hi,
>
> (Adding [for-4.18] in the title for Henry to spot the request)
>
> On 22/09/2023 23:27, Volodymyr Babchuk wrote:
>> ITS manages Device Tables and Interrupt Translation Tables on its own,
>> so generally we are not interested in maintaining any coherence with
>> CPU's view of those memory regions, except one case: ITS requires that
>> Interrupt Translation Tables should be initialized with
>> zeroes. Existing code already does this, but it does not cleans
>> caches afterwards. This means that ITS may see un-initialized ITT and
>> CPU can overwrite portions of ITT later, when it finally decides to
>> flush caches. Visible effect of this issue that there are not
>> interrupts delivered from a device.
>> Fix this by calling clean_and_invalidate_dcache_va_range() for newly
>> allocated ITT.
>> 
>
> I would consider to add:
>
> Fixes: 69082e1c210d ("ARM: GICv3 ITS: introduce device mapping")

May I ask you (or Henry?) to add this when you'll commit this change? Or
should I publish an updated version?

>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@xxxxxxxx>
>
> Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx>
>
> @Henry, this patch should be low-risk. We are cleaning & invalidating
> the cache, so there should be no change for platform not requiring
> cache maintenance. This should hopefully had support for more
> platform. Note that the GICv3 ITS feature is still experimental.
>
> Based on what I wrote above, would you be OK to have this patch in 4.18?


-- 
WBR, Volodymyr


 


Rackspace

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