[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH for-5.2 v4 05/11] hw/arm/smmu-common: Manage IOTLB block entr
From: |
Auger Eric |
Subject: |
Re: [PATCH for-5.2 v4 05/11] hw/arm/smmu-common: Manage IOTLB block entries |
Date: |
Fri, 31 Jul 2020 11:35:49 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 |
Hi Peter,
On 7/30/20 3:38 PM, Peter Maydell wrote:
> On Tue, 28 Jul 2020 at 16:09, Eric Auger <eric.auger@redhat.com> wrote:
>>
>> At the moment each entry in the IOTLB corresponds to a page sized
>> mapping (4K, 16K or 64K), even if the page belongs to a mapped
>> block. In case of block mapping this unefficiently consumes IOTLB
>> entries.
>>
>> Change the value of the entry so that it reflects the actual
>> mapping it belongs to (block or page start address and size).
>>
>> Also the level/tg of the entry is encoded in the key. In subsequent
>> patches we will enable range invalidation. This latter is able
>> to provide the level/tg of the entry.
>>
>> Encoding the level/tg directly in the key will allow to invalidate
>> using g_hash_table_remove() when num_pages equals to 1.
>>
>> Signed-off-by: Eric Auger <eric.auger@redhat.com>
>>
>> ---
>> v3 -> v4:
>> - also use the tg field when computing the hash
>> - in the key equal function, compare the fields instead of
>> using memcmp()
>> - fixed a couple of indents
>> - added Peter's R-b
>
> You say that, but you didn't :-)
Please forgive me for the oversight.
Thank you for the review.
Eric
>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>
> thanks
> -- PMM
>
- [PATCH for-5.2 v4 00/11] SMMUv3.2 Range-based TLB Invalidation Support, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 01/11] hw/arm/smmu-common: Factorize some code in smmu_ptw_64(), Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 02/11] hw/arm/smmu-common: Add IOTLB helpers, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 03/11] hw/arm/smmu: Introduce smmu_get_iotlb_key(), Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 04/11] hw/arm/smmu: Introduce SMMUTLBEntry for PTW and IOTLB value, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 05/11] hw/arm/smmu-common: Manage IOTLB block entries, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 07/11] hw/arm/smmuv3: Get prepared for range invalidation, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 08/11] hw/arm/smmuv3: Fix IIDR offset, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 09/11] hw/arm/smmuv3: Let AIDR advertise SMMUv3.0 support, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 10/11] hw/arm/smmuv3: Support HAD and advertise SMMUv3.1 support, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 06/11] hw/arm/smmuv3: Introduce smmuv3_s1_range_inval() helper, Eric Auger, 2020/07/28
- [PATCH for-5.2 v4 11/11] hw/arm/smmuv3: Advertise SMMUv3.2 range invalidation, Eric Auger, 2020/07/28
- Re: [PATCH for-5.2 v4 00/11] SMMUv3.2 Range-based TLB Invalidation Support, Peter Maydell, 2020/07/30