linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type
@ 2015-06-24 14:54 Grygorii Strashko
  2015-07-16  8:36 ` Linus Walleij
  0 siblings, 1 reply; 5+ messages in thread
From: Grygorii Strashko @ 2015-06-24 14:54 UTC (permalink / raw)
  To: Linus Walleij, Alexandre Courbot
  Cc: Sekhar Nori, Javier Martinez Canillas, tony, linux-omap,
	linux-gpio, linux-kernel, Grygorii Strashko

From: Grygorii Strashko <grygorii.strashko@linaro.org>

Add missed spin_unlock_irqrestore in omap_gpio_irq_type when
omap_set_gpio_triggering() is failed.

It fixes static checker warning:

	drivers/gpio/gpio-omap.c:523 omap_gpio_irq_type()
	warn: inconsistent returns 'spin_lock:&bank->lock'.

This fixes commit:
1562e4618ded ('gpio: omap: fix error handling in omap_gpio_irq_type')

Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org>
---
 drivers/gpio/gpio-omap.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index b0c57d5..a0ad803 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -500,8 +500,10 @@ static int omap_gpio_irq_type(struct irq_data *d, unsigned type)
 
 	spin_lock_irqsave(&bank->lock, flags);
 	retval = omap_set_gpio_triggering(bank, offset, type);
-	if (retval)
+	if (retval) {
+		spin_unlock_irqrestore(&bank->lock, flags);
 		goto error;
+	}
 	omap_gpio_init_irq(bank, offset);
 	if (!omap_gpio_is_input(bank, offset)) {
 		spin_unlock_irqrestore(&bank->lock, flags);
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type
  2015-06-24 14:54 [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type Grygorii Strashko
@ 2015-07-16  8:36 ` Linus Walleij
  2015-08-07  3:36   ` Tony Lindgren
  0 siblings, 1 reply; 5+ messages in thread
From: Linus Walleij @ 2015-07-16  8:36 UTC (permalink / raw)
  To: Grygorii Strashko
  Cc: Alexandre Courbot, Sekhar Nori, Javier Martinez Canillas,
	Tony Lindgren, Linux-OMAP, linux-gpio@vger.kernel.org,
	linux-kernel@vger.kernel.org, Grygorii Strashko

On Wed, Jun 24, 2015 at 4:54 PM, Grygorii Strashko
<grygorii.strashko@ti.com> wrote:

> From: Grygorii Strashko <grygorii.strashko@linaro.org>
>
> Add missed spin_unlock_irqrestore in omap_gpio_irq_type when
> omap_set_gpio_triggering() is failed.
>
> It fixes static checker warning:
>
>         drivers/gpio/gpio-omap.c:523 omap_gpio_irq_type()
>         warn: inconsistent returns 'spin_lock:&bank->lock'.
>
> This fixes commit:
> 1562e4618ded ('gpio: omap: fix error handling in omap_gpio_irq_type')
>
> Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
> Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org>

Patch applied for fixes.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type
  2015-07-16  8:36 ` Linus Walleij
@ 2015-08-07  3:36   ` Tony Lindgren
  2015-08-07  7:34     ` Grygorii Strashko
  0 siblings, 1 reply; 5+ messages in thread
From: Tony Lindgren @ 2015-08-07  3:36 UTC (permalink / raw)
  To: Linus Walleij
  Cc: Grygorii Strashko, Alexandre Courbot, Sekhar Nori,
	Javier Martinez Canillas, Linux-OMAP, linux-gpio@vger.kernel.org,
	linux-kernel@vger.kernel.org, Grygorii Strashko,
	Sebastian Andrzej Siewior

* Linus Walleij <linus.walleij@linaro.org> [150716 01:38]:
> On Wed, Jun 24, 2015 at 4:54 PM, Grygorii Strashko
> <grygorii.strashko@ti.com> wrote:
> 
> > From: Grygorii Strashko <grygorii.strashko@linaro.org>
> >
> > Add missed spin_unlock_irqrestore in omap_gpio_irq_type when
> > omap_set_gpio_triggering() is failed.
> >
> > It fixes static checker warning:
> >
> >         drivers/gpio/gpio-omap.c:523 omap_gpio_irq_type()
> >         warn: inconsistent returns 'spin_lock:&bank->lock'.
> >
> > This fixes commit:
> > 1562e4618ded ('gpio: omap: fix error handling in omap_gpio_irq_type')
> >
> > Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
> > Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org>
> 
> Patch applied for fixes.

Linus, looks like we now have a new build warning in Linux next
with the fixes and raw_spinlock_t change, so a merge or a commit
is needed. If you prefer a patch, here's one below.

Regards,

Tony

8< ---------------
From: Tony Lindgren <tony@atomide.com>
Date: Thu, 6 Aug 2015 20:32:24 -0700
Subject: [PATCH] gpio: omap: Fix build warning for raw_spinlock_t conversion
 and unlock fix
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Looks like we now have a new build warning in Linux next with fix
977bd8a94c40 ("gpio: omap: add missed spin_unlock_irqrestore in
omap_gpio_irq_type") and raw_spinlock changes done in commit
4dbada2be460 ("gpio: omap: use raw locks for locking"):

drivers/gpio/gpio-omap.c: In function ‘omap_gpio_irq_type’:
drivers/gpio/gpio-omap.c:504:26: warning: passing argument 1 of
‘spin_unlock_irqrestore’ from incompatible pointer type
[-Wincompatible-pointer-types]
   spin_unlock_irqrestore(&bank->lock, flags);
                          ^
In file included from include/linux/seqlock.h:35:0,
                 from include/linux/time.h:5,
                 from include/linux/stat.h:18,
                 from include/linux/module.h:10,
                 from drivers/gpio/gpio-omap.c:16:
include/linux/spinlock.h:370:122: note: expected
‘spinlock_t * {aka struct spinlock *}’ but argument is of type
‘raw_spinlock_t * {aka struct raw_spinlock *}’

Fix the issue with using raw_spinlock_t instead.

Signed-off-by: Tony Lindgren <tony@atomide.com>

--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -501,7 +501,7 @@ static int omap_gpio_irq_type(struct irq_data *d, unsigned type)
 	raw_spin_lock_irqsave(&bank->lock, flags);
 	retval = omap_set_gpio_triggering(bank, offset, type);
 	if (retval) {
-		spin_unlock_irqrestore(&bank->lock, flags);
+		raw_spin_unlock_irqrestore(&bank->lock, flags);
 		goto error;
 	}
 	omap_gpio_init_irq(bank, offset);
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type
  2015-08-07  3:36   ` Tony Lindgren
@ 2015-08-07  7:34     ` Grygorii Strashko
  2015-08-13 12:44       ` Linus Walleij
  0 siblings, 1 reply; 5+ messages in thread
From: Grygorii Strashko @ 2015-08-07  7:34 UTC (permalink / raw)
  To: Tony Lindgren, Linus Walleij
  Cc: Alexandre Courbot, Sekhar Nori, Javier Martinez Canillas,
	Linux-OMAP, linux-gpio@vger.kernel.org,
	linux-kernel@vger.kernel.org, Grygorii Strashko,
	Sebastian Andrzej Siewior

Hi Tony,
On 08/07/2015 06:36 AM, Tony Lindgren wrote:
> * Linus Walleij <linus.walleij@linaro.org> [150716 01:38]:
>> On Wed, Jun 24, 2015 at 4:54 PM, Grygorii Strashko
>> <grygorii.strashko@ti.com> wrote:
>>
>>> From: Grygorii Strashko <grygorii.strashko@linaro.org>
>>>
>>> Add missed spin_unlock_irqrestore in omap_gpio_irq_type when
>>> omap_set_gpio_triggering() is failed.
>>>
>>> It fixes static checker warning:
>>>
>>>          drivers/gpio/gpio-omap.c:523 omap_gpio_irq_type()
>>>          warn: inconsistent returns 'spin_lock:&bank->lock'.
>>>
>>> This fixes commit:
>>> 1562e4618ded ('gpio: omap: fix error handling in omap_gpio_irq_type')
>>>
>>> Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
>>> Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org>
>>
>> Patch applied for fixes.
>
> Linus, looks like we now have a new build warning in Linux next
> with the fixes and raw_spinlock_t change, so a merge or a commit
> is needed. If you prefer a patch, here's one below.

Yes. It seems merge/rebase issue between fixes & next:
- this patch went through fixes and RAW spinlock conversation
patch through -next, and without merge conflicts.

and patch has been posted already by Axel Lin:
http://www.spinics.net/lists/linux-omap/msg121031.html


>
> 8< ---------------
> From: Tony Lindgren <tony@atomide.com>
> Date: Thu, 6 Aug 2015 20:32:24 -0700
> Subject: [PATCH] gpio: omap: Fix build warning for raw_spinlock_t conversion
>   and unlock fix
> MIME-Version: 1.0
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
>
> Looks like we now have a new build warning in Linux next with fix
> 977bd8a94c40 ("gpio: omap: add missed spin_unlock_irqrestore in
> omap_gpio_irq_type") and raw_spinlock changes done in commit
> 4dbada2be460 ("gpio: omap: use raw locks for locking"):
>
> drivers/gpio/gpio-omap.c: In function ‘omap_gpio_irq_type’:
> drivers/gpio/gpio-omap.c:504:26: warning: passing argument 1 of
> ‘spin_unlock_irqrestore’ from incompatible pointer type
> [-Wincompatible-pointer-types]
>     spin_unlock_irqrestore(&bank->lock, flags);
>                            ^
> In file included from include/linux/seqlock.h:35:0,
>                   from include/linux/time.h:5,
>                   from include/linux/stat.h:18,
>                   from include/linux/module.h:10,
>                   from drivers/gpio/gpio-omap.c:16:
> include/linux/spinlock.h:370:122: note: expected
> ‘spinlock_t * {aka struct spinlock *}’ but argument is of type
> ‘raw_spinlock_t * {aka struct raw_spinlock *}’
>
> Fix the issue with using raw_spinlock_t instead.
>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
>
> --- a/drivers/gpio/gpio-omap.c
> +++ b/drivers/gpio/gpio-omap.c
> @@ -501,7 +501,7 @@ static int omap_gpio_irq_type(struct irq_data *d, unsigned type)
>   	raw_spin_lock_irqsave(&bank->lock, flags);
>   	retval = omap_set_gpio_triggering(bank, offset, type);
>   	if (retval) {
> -		spin_unlock_irqrestore(&bank->lock, flags);
> +		raw_spin_unlock_irqrestore(&bank->lock, flags);
>   		goto error;
>   	}
>   	omap_gpio_init_irq(bank, offset);
> --
> To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


-- 
regards,
-grygorii

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type
  2015-08-07  7:34     ` Grygorii Strashko
@ 2015-08-13 12:44       ` Linus Walleij
  0 siblings, 0 replies; 5+ messages in thread
From: Linus Walleij @ 2015-08-13 12:44 UTC (permalink / raw)
  To: Grygorii Strashko
  Cc: Tony Lindgren, Alexandre Courbot, Sekhar Nori,
	Javier Martinez Canillas, Linux-OMAP, linux-gpio@vger.kernel.org,
	linux-kernel@vger.kernel.org, Grygorii Strashko,
	Sebastian Andrzej Siewior

On Fri, Aug 7, 2015 at 9:34 AM, Grygorii Strashko
<grygorii.strashko@ti.com> wrote:
> Hi Tony,
> On 08/07/2015 06:36 AM, Tony Lindgren wrote:
>>
>> * Linus Walleij <linus.walleij@linaro.org> [150716 01:38]:
>>>
>>> On Wed, Jun 24, 2015 at 4:54 PM, Grygorii Strashko
>>> <grygorii.strashko@ti.com> wrote:
>>>
>>>> From: Grygorii Strashko <grygorii.strashko@linaro.org>
>>>>
>>>> Add missed spin_unlock_irqrestore in omap_gpio_irq_type when
>>>> omap_set_gpio_triggering() is failed.
>>>>
>>>> It fixes static checker warning:
>>>>
>>>>          drivers/gpio/gpio-omap.c:523 omap_gpio_irq_type()
>>>>          warn: inconsistent returns 'spin_lock:&bank->lock'.
>>>>
>>>> This fixes commit:
>>>> 1562e4618ded ('gpio: omap: fix error handling in omap_gpio_irq_type')
>>>>
>>>> Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
>>>> Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org>
>>>
>>>
>>> Patch applied for fixes.
>>
>>
>> Linus, looks like we now have a new build warning in Linux next
>> with the fixes and raw_spinlock_t change, so a merge or a commit
>> is needed. If you prefer a patch, here's one below.
>
>
> Yes. It seems merge/rebase issue between fixes & next:
> - this patch went through fixes and RAW spinlock conversation
> patch through -next, and without merge conflicts.
>
> and patch has been posted already by Axel Lin:
> http://www.spinics.net/lists/linux-omap/msg121031.html

I merged v4.2-rc4 into my devel branch and applied Axel's
patch to fix this mess. Check that it looks OK now...

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-08-13 12:44 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-24 14:54 [4.2-rc1][PATCH] gpio: omap: add missed spin_unlock_irqrestore in omap_gpio_irq_type Grygorii Strashko
2015-07-16  8:36 ` Linus Walleij
2015-08-07  3:36   ` Tony Lindgren
2015-08-07  7:34     ` Grygorii Strashko
2015-08-13 12:44       ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).