thunderbolt: rename shadowed variables bit to interrupt_bit and auto_clear_bit

Message ID 20230315220450.1470815-1-trix@redhat.com
State New
Headers
Series thunderbolt: rename shadowed variables bit to interrupt_bit and auto_clear_bit |

Commit Message

Tom Rix March 15, 2023, 10:04 p.m. UTC
  cppcheck reports
drivers/thunderbolt/nhi.c:74:7: style: Local variable 'bit' shadows outer variable [shadowVariable]
  int bit;
      ^
drivers/thunderbolt/nhi.c:66:6: note: Shadowed declaration
 int bit = ring_interrupt_index(ring) & 31;
     ^
drivers/thunderbolt/nhi.c:74:7: note: Shadow variable
  int bit;
      ^
For readablity rename the outer to interrupt_bit and the innner
to auto_clear_bit.

Signed-off-by: Tom Rix <trix@redhat.com>
---
 drivers/thunderbolt/nhi.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)
  

Comments

Mika Westerberg March 16, 2023, 10:20 a.m. UTC | #1
+Cc Mario

On Wed, Mar 15, 2023 at 06:04:50PM -0400, Tom Rix wrote:
> cppcheck reports
> drivers/thunderbolt/nhi.c:74:7: style: Local variable 'bit' shadows outer variable [shadowVariable]
>   int bit;
>       ^
> drivers/thunderbolt/nhi.c:66:6: note: Shadowed declaration
>  int bit = ring_interrupt_index(ring) & 31;
>      ^
> drivers/thunderbolt/nhi.c:74:7: note: Shadow variable
>   int bit;
>       ^
> For readablity rename the outer to interrupt_bit and the innner
> to auto_clear_bit.

Thanks for the patch! Yeah, this did not show up in any of the kbuild
tests perhaps they are missing cppcheck :(

I'm thinking that I'll just move the two commits from "fixes" to "next"
and add this one on top (and drop the stable tags) as the code that we
should be sending to stable should not need additional fixes IMHO. I
know Mario is on vacation so probably cannot answer here so let's deal
with this when he is back.

> Signed-off-by: Tom Rix <trix@redhat.com>
> ---
>  drivers/thunderbolt/nhi.c | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/thunderbolt/nhi.c b/drivers/thunderbolt/nhi.c
> index 318d20bd5b69..d0d26d288be8 100644
> --- a/drivers/thunderbolt/nhi.c
> +++ b/drivers/thunderbolt/nhi.c
> @@ -63,15 +63,15 @@ static void ring_interrupt_active(struct tb_ring *ring, bool active)
>  {
>  	int reg = REG_RING_INTERRUPT_BASE +
>  		  ring_interrupt_index(ring) / 32 * 4;
> -	int bit = ring_interrupt_index(ring) & 31;
> -	int mask = 1 << bit;
> +	int interrupt_bit = ring_interrupt_index(ring) & 31;
> +	int mask = 1 << interrupt_bit;
>  	u32 old, new;
>  
>  	if (ring->irq > 0) {
>  		u32 step, shift, ivr, misc;
>  		void __iomem *ivr_base;
> +		int auto_clear_bit;
>  		int index;
> -		int bit;
>  
>  		if (ring->is_tx)
>  			index = ring->hop;
> @@ -91,11 +91,11 @@ static void ring_interrupt_active(struct tb_ring *ring, bool active)
>  		 */
>  		misc = ioread32(ring->nhi->iobase + REG_DMA_MISC);
>  		if (ring->nhi->quirks & QUIRK_AUTO_CLEAR_INT)
> -			bit = REG_DMA_MISC_INT_AUTO_CLEAR;
> +			auto_clear_bit = REG_DMA_MISC_INT_AUTO_CLEAR;
>  		else
> -			bit = REG_DMA_MISC_DISABLE_AUTO_CLEAR;
> -		if (!(misc & bit))
> -			iowrite32(misc | bit, ring->nhi->iobase + REG_DMA_MISC);
> +			auto_clear_bit = REG_DMA_MISC_DISABLE_AUTO_CLEAR;
> +		if (!(misc & auto_clear_bit))
> +			iowrite32(misc | auto_clear_bit, ring->nhi->iobase + REG_DMA_MISC);
>  
>  		ivr_base = ring->nhi->iobase + REG_INT_VEC_ALLOC_BASE;
>  		step = index / REG_INT_VEC_ALLOC_REGS * REG_INT_VEC_ALLOC_BITS;
> @@ -115,7 +115,7 @@ static void ring_interrupt_active(struct tb_ring *ring, bool active)
>  
>  	dev_dbg(&ring->nhi->pdev->dev,
>  		"%s interrupt at register %#x bit %d (%#x -> %#x)\n",
> -		active ? "enabling" : "disabling", reg, bit, old, new);
> +		active ? "enabling" : "disabling", reg, interrupt_bit, old, new);
>  
>  	if (new == old)
>  		dev_WARN(&ring->nhi->pdev->dev,
> -- 
> 2.27.0
  
Mika Westerberg March 16, 2023, 10:37 a.m. UTC | #2
On Thu, Mar 16, 2023 at 12:20:48PM +0200, Mika Westerberg wrote:
> +Cc Mario
> 
> On Wed, Mar 15, 2023 at 06:04:50PM -0400, Tom Rix wrote:
> > cppcheck reports
> > drivers/thunderbolt/nhi.c:74:7: style: Local variable 'bit' shadows outer variable [shadowVariable]
> >   int bit;
> >       ^
> > drivers/thunderbolt/nhi.c:66:6: note: Shadowed declaration
> >  int bit = ring_interrupt_index(ring) & 31;
> >      ^
> > drivers/thunderbolt/nhi.c:74:7: note: Shadow variable
> >   int bit;
> >       ^
> > For readablity rename the outer to interrupt_bit and the innner
> > to auto_clear_bit.
> 
> Thanks for the patch! Yeah, this did not show up in any of the kbuild
> tests perhaps they are missing cppcheck :(
> 
> I'm thinking that I'll just move the two commits from "fixes" to "next"
> and add this one on top (and drop the stable tags) as the code that we
> should be sending to stable should not need additional fixes IMHO. I
> know Mario is on vacation so probably cannot answer here so let's deal
> with this when he is back.

Applied to thunderbolt.git/next (along with the two commits from Mario).
  
Mario Limonciello March 19, 2023, 1:33 a.m. UTC | #3
On 3/16/23 05:37, Mika Westerberg wrote:
> On Thu, Mar 16, 2023 at 12:20:48PM +0200, Mika Westerberg wrote:
>> +Cc Mario
>>
>> On Wed, Mar 15, 2023 at 06:04:50PM -0400, Tom Rix wrote:
>>> cppcheck reports
>>> drivers/thunderbolt/nhi.c:74:7: style: Local variable 'bit' shadows outer variable [shadowVariable]
>>>    int bit;
>>>        ^
>>> drivers/thunderbolt/nhi.c:66:6: note: Shadowed declaration
>>>   int bit = ring_interrupt_index(ring) & 31;
>>>       ^
>>> drivers/thunderbolt/nhi.c:74:7: note: Shadow variable
>>>    int bit;
>>>        ^
>>> For readablity rename the outer to interrupt_bit and the innner
>>> to auto_clear_bit.
>> Thanks for the patch! Yeah, this did not show up in any of the kbuild
>> tests perhaps they are missing cppcheck :(
>>
>> I'm thinking that I'll just move the two commits from "fixes" to "next"
>> and add this one on top (and drop the stable tags) as the code that we
>> should be sending to stable should not need additional fixes IMHO. I
>> know Mario is on vacation so probably cannot answer here so let's deal
>> with this when he is back.
> Applied to thunderbolt.git/next (along with the two commits from Mario).

Thanks for the fix Tom!

Mika - It's unfortunate that a fixup was needed but I'd still like if we
can get these 3 commits into 6.3-rc and also to stable.
  
Mika Westerberg March 20, 2023, 7:42 a.m. UTC | #4
On Sat, Mar 18, 2023 at 08:33:58PM -0500, Mario Limonciello wrote:
> 
> On 3/16/23 05:37, Mika Westerberg wrote:
> > On Thu, Mar 16, 2023 at 12:20:48PM +0200, Mika Westerberg wrote:
> > > +Cc Mario
> > > 
> > > On Wed, Mar 15, 2023 at 06:04:50PM -0400, Tom Rix wrote:
> > > > cppcheck reports
> > > > drivers/thunderbolt/nhi.c:74:7: style: Local variable 'bit' shadows outer variable [shadowVariable]
> > > >    int bit;
> > > >        ^
> > > > drivers/thunderbolt/nhi.c:66:6: note: Shadowed declaration
> > > >   int bit = ring_interrupt_index(ring) & 31;
> > > >       ^
> > > > drivers/thunderbolt/nhi.c:74:7: note: Shadow variable
> > > >    int bit;
> > > >        ^
> > > > For readablity rename the outer to interrupt_bit and the innner
> > > > to auto_clear_bit.
> > > Thanks for the patch! Yeah, this did not show up in any of the kbuild
> > > tests perhaps they are missing cppcheck :(
> > > 
> > > I'm thinking that I'll just move the two commits from "fixes" to "next"
> > > and add this one on top (and drop the stable tags) as the code that we
> > > should be sending to stable should not need additional fixes IMHO. I
> > > know Mario is on vacation so probably cannot answer here so let's deal
> > > with this when he is back.
> > Applied to thunderbolt.git/next (along with the two commits from Mario).
> 
> Thanks for the fix Tom!
> 
> Mika - It's unfortunate that a fixup was needed but I'd still like if we
> can get these 3 commits into 6.3-rc and also to stable.

Fair enough. I moved them into fixes now.
  

Patch

diff --git a/drivers/thunderbolt/nhi.c b/drivers/thunderbolt/nhi.c
index 318d20bd5b69..d0d26d288be8 100644
--- a/drivers/thunderbolt/nhi.c
+++ b/drivers/thunderbolt/nhi.c
@@ -63,15 +63,15 @@  static void ring_interrupt_active(struct tb_ring *ring, bool active)
 {
 	int reg = REG_RING_INTERRUPT_BASE +
 		  ring_interrupt_index(ring) / 32 * 4;
-	int bit = ring_interrupt_index(ring) & 31;
-	int mask = 1 << bit;
+	int interrupt_bit = ring_interrupt_index(ring) & 31;
+	int mask = 1 << interrupt_bit;
 	u32 old, new;
 
 	if (ring->irq > 0) {
 		u32 step, shift, ivr, misc;
 		void __iomem *ivr_base;
+		int auto_clear_bit;
 		int index;
-		int bit;
 
 		if (ring->is_tx)
 			index = ring->hop;
@@ -91,11 +91,11 @@  static void ring_interrupt_active(struct tb_ring *ring, bool active)
 		 */
 		misc = ioread32(ring->nhi->iobase + REG_DMA_MISC);
 		if (ring->nhi->quirks & QUIRK_AUTO_CLEAR_INT)
-			bit = REG_DMA_MISC_INT_AUTO_CLEAR;
+			auto_clear_bit = REG_DMA_MISC_INT_AUTO_CLEAR;
 		else
-			bit = REG_DMA_MISC_DISABLE_AUTO_CLEAR;
-		if (!(misc & bit))
-			iowrite32(misc | bit, ring->nhi->iobase + REG_DMA_MISC);
+			auto_clear_bit = REG_DMA_MISC_DISABLE_AUTO_CLEAR;
+		if (!(misc & auto_clear_bit))
+			iowrite32(misc | auto_clear_bit, ring->nhi->iobase + REG_DMA_MISC);
 
 		ivr_base = ring->nhi->iobase + REG_INT_VEC_ALLOC_BASE;
 		step = index / REG_INT_VEC_ALLOC_REGS * REG_INT_VEC_ALLOC_BITS;
@@ -115,7 +115,7 @@  static void ring_interrupt_active(struct tb_ring *ring, bool active)
 
 	dev_dbg(&ring->nhi->pdev->dev,
 		"%s interrupt at register %#x bit %d (%#x -> %#x)\n",
-		active ? "enabling" : "disabling", reg, bit, old, new);
+		active ? "enabling" : "disabling", reg, interrupt_bit, old, new);
 
 	if (new == old)
 		dev_WARN(&ring->nhi->pdev->dev,