lkml.org 
[lkml]   [2021]   [Dec]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] iommu/vt-d: Use bitmap_zalloc() when applicable
From
Date
Le 18/12/2021 à 06:56, Lu Baolu a écrit :
> On 2021/12/18 5:58, Christophe JAILLET wrote:
>> 'ommu->domain_ids' is a bitmap. So use 'bitmap_zalloc()' to simplify
>> code and improve the semantic, instead of hand writing it.
>>
>> Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
>> consistency.
>>
>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>> ---
>>   drivers/iommu/intel/iommu.c | 9 ++++-----
>>   1 file changed, 4 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
>> index b6a8f3282411..4acc97765209 100644
>> --- a/drivers/iommu/intel/iommu.c
>> +++ b/drivers/iommu/intel/iommu.c
>> @@ -1878,17 +1878,16 @@ static void iommu_disable_translation(struct
>> intel_iommu *iommu)
>>   static int iommu_init_domains(struct intel_iommu *iommu)
>>   {
>> -    u32 ndomains, nlongs;
>> +    u32 ndomains;
>>       size_t size;
>>       ndomains = cap_ndoms(iommu->cap);
>>       pr_debug("%s: Number of Domains supported <%d>\n",
>>            iommu->name, ndomains);
>> -    nlongs = BITS_TO_LONGS(ndomains);
>>       spin_lock_init(&iommu->lock);
>> -    iommu->domain_ids = kcalloc(nlongs, sizeof(unsigned long),
>> GFP_KERNEL);
>> +    iommu->domain_ids = bitmap_zalloc(ndomains, GFP_KERNEL);
>>       if (!iommu->domain_ids)
>>           return -ENOMEM;
>> @@ -1903,7 +1902,7 @@ static int iommu_init_domains(struct intel_iommu
>> *iommu)
>>       if (!iommu->domains || !iommu->domains[0]) {
>>           pr_err("%s: Allocating domain array failed\n",
>>                  iommu->name);
>> -        kfree(iommu->domain_ids);
>> +        bitmap_free(iommu->domain_ids);
>>           kfree(iommu->domains);
>>           iommu->domain_ids = NULL;
>>           iommu->domains    = NULL;
>> @@ -1964,7 +1963,7 @@ static void free_dmar_iommu(struct intel_iommu
>> *iommu)
>>           for (i = 0; i < elems; i++)
>>               kfree(iommu->domains[i]);
>>           kfree(iommu->domains);
>> -        kfree(iommu->domain_ids);
>> +        bitmap_free(iommu->domain_ids);
>>           iommu->domains = NULL;
>>           iommu->domain_ids = NULL;
>>       }
>
> This patch has been merged to Joerg's tree through
>
> https://lore.kernel.org/linux-iommu/20211217083817.1745419-2-baolu.lu@linux.intel.com/
>
>
> Are there any extra changes in this one?

No, this is the same. Sorry for the duplicate.

CJ

>
> Best regards,
> baolu
>

\
 
 \ /
  Last update: 2021-12-18 07:56    [W:0.044 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site