[PATCH v3 3/3] intel_iommu: make types match

CLEMENT MATHIEU--DRIF posted 3 patches 4 months, 3 weeks ago
Maintainers: "Michael S. Tsirkin" <mst@redhat.com>, Jason Wang <jasowang@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>
There is a newer version of this series
[PATCH v3 3/3] intel_iommu: make types match
Posted by CLEMENT MATHIEU--DRIF 4 months, 3 weeks ago
From: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>

The 'level' field in vtd_iotlb_key is an unsigned integer.
We don't need to store level as an int in vtd_lookup_iotlb.

Signed-off-by: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
---
 hw/i386/intel_iommu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 37c21a0aec..be0cb39b5c 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -358,7 +358,7 @@ static VTDIOTLBEntry *vtd_lookup_iotlb(IntelIOMMUState *s, uint16_t source_id,
 {
     struct vtd_iotlb_key key;
     VTDIOTLBEntry *entry;
-    int level;
+    unsigned level;
 
     for (level = VTD_SL_PT_LEVEL; level < VTD_SL_PML4_LEVEL; level++) {
         key.gfn = vtd_get_iotlb_gfn(addr, level);
-- 
2.45.2
RE: [PATCH v3 3/3] intel_iommu: make types match
Posted by Duan, Zhenzhong 4 months, 3 weeks ago

>-----Original Message-----
>From: CLEMENT MATHIEU--DRIF <clement.mathieu--drif@eviden.com>
>Subject: [PATCH v3 3/3] intel_iommu: make types match
>
>From: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
>
>The 'level' field in vtd_iotlb_key is an unsigned integer.
>We don't need to store level as an int in vtd_lookup_iotlb.
>
>Signed-off-by: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
>---
> hw/i386/intel_iommu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
>index 37c21a0aec..be0cb39b5c 100644
>--- a/hw/i386/intel_iommu.c
>+++ b/hw/i386/intel_iommu.c
>@@ -358,7 +358,7 @@ static VTDIOTLBEntry
>*vtd_lookup_iotlb(IntelIOMMUState *s, uint16_t source_id,
> {
>     struct vtd_iotlb_key key;
>     VTDIOTLBEntry *entry;
>-    int level;
>+    unsigned level;

Will it bring any issue if int is used?

>
>     for (level = VTD_SL_PT_LEVEL; level < VTD_SL_PML4_LEVEL; level++) {
>         key.gfn = vtd_get_iotlb_gfn(addr, level);
>--
>2.45.2
Re: [PATCH v3 3/3] intel_iommu: make types match
Posted by CLEMENT MATHIEU--DRIF 4 months, 3 weeks ago

On 05/07/2024 10:51, Duan, Zhenzhong wrote:
> Caution: External email. Do not open attachments or click links, unless this email comes from a known sender and you know the content is safe.
>
>
>> -----Original Message-----
>> From: CLEMENT MATHIEU--DRIF <clement.mathieu--drif@eviden.com>
>> Subject: [PATCH v3 3/3] intel_iommu: make types match
>>
>> From: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
>>
>> The 'level' field in vtd_iotlb_key is an unsigned integer.
>> We don't need to store level as an int in vtd_lookup_iotlb.
>>
>> Signed-off-by: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
>> ---
>> hw/i386/intel_iommu.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
>> index 37c21a0aec..be0cb39b5c 100644
>> --- a/hw/i386/intel_iommu.c
>> +++ b/hw/i386/intel_iommu.c
>> @@ -358,7 +358,7 @@ static VTDIOTLBEntry
>> *vtd_lookup_iotlb(IntelIOMMUState *s, uint16_t source_id,
>> {
>>      struct vtd_iotlb_key key;
>>      VTDIOTLBEntry *entry;
>> -    int level;
>> +    unsigned level;
> Will it bring any issue if int is used?
It shouldn't, but it might trigger static analyzer warnings.
Do you want me to drop the patch?
>
>>      for (level = VTD_SL_PT_LEVEL; level < VTD_SL_PML4_LEVEL; level++) {
>>          key.gfn = vtd_get_iotlb_gfn(addr, level);
>> --
>> 2.45.2
Re: [PATCH v3 3/3] intel_iommu: make types match
Posted by Michael S. Tsirkin 4 months, 3 weeks ago
On Fri, Jul 05, 2024 at 09:24:50AM +0000, CLEMENT MATHIEU--DRIF wrote:
> 
> 
> On 05/07/2024 10:51, Duan, Zhenzhong wrote:
> > Caution: External email. Do not open attachments or click links, unless this email comes from a known sender and you know the content is safe.
> >
> >
> >> -----Original Message-----
> >> From: CLEMENT MATHIEU--DRIF <clement.mathieu--drif@eviden.com>
> >> Subject: [PATCH v3 3/3] intel_iommu: make types match
> >>
> >> From: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
> >>
> >> The 'level' field in vtd_iotlb_key is an unsigned integer.
> >> We don't need to store level as an int in vtd_lookup_iotlb.
> >>
> >> Signed-off-by: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com>
> >> ---
> >> hw/i386/intel_iommu.c | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
> >> index 37c21a0aec..be0cb39b5c 100644
> >> --- a/hw/i386/intel_iommu.c
> >> +++ b/hw/i386/intel_iommu.c
> >> @@ -358,7 +358,7 @@ static VTDIOTLBEntry
> >> *vtd_lookup_iotlb(IntelIOMMUState *s, uint16_t source_id,
> >> {
> >>      struct vtd_iotlb_key key;
> >>      VTDIOTLBEntry *entry;
> >> -    int level;
> >> +    unsigned level;
> > Will it bring any issue if int is used?
> It shouldn't, but it might trigger static analyzer warnings.
> Do you want me to drop the patch?


just write a better commit log.
"Not an issue by itself, but using unsigned here seems cleaner".


> >
> >>      for (level = VTD_SL_PT_LEVEL; level < VTD_SL_PML4_LEVEL; level++) {
> >>          key.gfn = vtd_get_iotlb_gfn(addr, level);
> >> --
> >> 2.45.2