linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] nfc: change order inside nfc_se_io error path
@ 2023-03-04 16:48 Fedor Pchelkin
  2023-03-06 15:28 ` Krzysztof Kozlowski
  0 siblings, 1 reply; 8+ messages in thread
From: Fedor Pchelkin @ 2023-03-04 16:48 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Jakub Kicinski
  Cc: Fedor Pchelkin, David S. Miller, Eric Dumazet, Paolo Abeni,
	netdev, linux-kernel, Alexey Khoroshilov, lvc-project

cb_context should be freed on error paths in nfc_se_io as stated by commit
25ff6f8a5a3b ("nfc: fix memory leak of se_io context in nfc_genl_se_io").

Make the error path in nfc_se_io unwind everything in reverse order, i.e.
free the cb_context after unlocking the device.

No functional changes intended - only adjusting to good coding practice.

Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
---
 net/nfc/netlink.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/nfc/netlink.c b/net/nfc/netlink.c
index 348bf561bc9f..b9264e730fd9 100644
--- a/net/nfc/netlink.c
+++ b/net/nfc/netlink.c
@@ -1446,8 +1446,8 @@ static int nfc_se_io(struct nfc_dev *dev, u32 se_idx,
 	return rc;
 
 error:
-	kfree(cb_context);
 	device_unlock(&dev->dev);
+	kfree(cb_context);
 	return rc;
 }
 
-- 
2.34.1


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

* Re: [PATCH] nfc: change order inside nfc_se_io error path
  2023-03-04 16:48 [PATCH] nfc: change order inside nfc_se_io error path Fedor Pchelkin
@ 2023-03-06 15:28 ` Krzysztof Kozlowski
  2023-03-06 20:35   ` Fedor Pchelkin
  0 siblings, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-06 15:28 UTC (permalink / raw)
  To: Fedor Pchelkin, Jakub Kicinski
  Cc: David S. Miller, Eric Dumazet, Paolo Abeni, netdev, linux-kernel,
	Alexey Khoroshilov, lvc-project

On 04/03/2023 17:48, Fedor Pchelkin wrote:
> cb_context should be freed on error paths in nfc_se_io as stated by commit
> 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in nfc_genl_se_io").
> 
> Make the error path in nfc_se_io unwind everything in reverse order, i.e.
> free the cb_context after unlocking the device.
> 
> No functional changes intended - only adjusting to good coding practice.

I would argue that it is functional. Running code in or outside of
critical section/locks is quite functional change.

> 
> Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
> ---
>  net/nfc/netlink.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/nfc/netlink.c b/net/nfc/netlink.c
> index 348bf561bc9f..b9264e730fd9 100644
> --- a/net/nfc/netlink.c
> +++ b/net/nfc/netlink.c
> @@ -1446,8 +1446,8 @@ static int nfc_se_io(struct nfc_dev *dev, u32 se_idx,
>  	return rc;
>  
>  error:
> -	kfree(cb_context);
>  	device_unlock(&dev->dev);
> +	kfree(cb_context);


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

>  

Best regards,
Krzysztof


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

* Re: [PATCH] nfc: change order inside nfc_se_io error path
  2023-03-06 15:28 ` Krzysztof Kozlowski
@ 2023-03-06 20:35   ` Fedor Pchelkin
  2023-03-06 20:41     ` Fedor Pchelkin
  0 siblings, 1 reply; 8+ messages in thread
From: Fedor Pchelkin @ 2023-03-06 20:35 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Jakub Kicinski, David S. Miller, Eric Dumazet, Paolo Abeni,
	netdev, linux-kernel, Alexey Khoroshilov, lvc-project

On Mon, Mar 06, 2023 at 04:28:12PM +0100, Krzysztof Kozlowski wrote:
> On 04/03/2023 17:48, Fedor Pchelkin wrote:
> > cb_context should be freed on error paths in nfc_se_io as stated by commit
> > 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in nfc_genl_se_io").
> > 
> > Make the error path in nfc_se_io unwind everything in reverse order, i.e.
> > free the cb_context after unlocking the device.
> > 
> > No functional changes intended - only adjusting to good coding practice.
> 
> I would argue that it is functional. Running code in or outside of
> critical section/locks is quite functional change.
> 

Hmm, actually, yes. I'll resend v2 with changed commit info as 'no
functional changes' statement can probably be misunderstood later.

Should this patch be backported by the way? It doesn't seem to fix any
real issue but, as you mentioned, it contains some functional changes
which may be of some importance in future.

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

* Re: [PATCH] nfc: change order inside nfc_se_io error path
  2023-03-06 20:35   ` Fedor Pchelkin
@ 2023-03-06 20:41     ` Fedor Pchelkin
  2023-03-06 20:58       ` Jakub Kicinski
  0 siblings, 1 reply; 8+ messages in thread
From: Fedor Pchelkin @ 2023-03-06 20:41 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Jakub Kicinski, David S. Miller, Eric Dumazet, Paolo Abeni,
	netdev, linux-kernel, Alexey Khoroshilov, lvc-project

On Mon, Mar 06, 2023 at 11:35:09PM +0300, Fedor Pchelkin wrote:
> On Mon, Mar 06, 2023 at 04:28:12PM +0100, Krzysztof Kozlowski wrote:
> > On 04/03/2023 17:48, Fedor Pchelkin wrote:
> > > cb_context should be freed on error paths in nfc_se_io as stated by commit
> > > 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in nfc_genl_se_io").
> > > 
> > > Make the error path in nfc_se_io unwind everything in reverse order, i.e.
> > > free the cb_context after unlocking the device.
> > > 
> > > No functional changes intended - only adjusting to good coding practice.
> > 
> > I would argue that it is functional. Running code in or outside of
> > critical section/locks is quite functional change.
> > 
> 
> Hmm, actually, yes. I'll resend v2 with changed commit info as 'no
> functional changes' statement can probably be misunderstood later.
> 
> Should this patch be backported by the way? It doesn't seem to fix any
> real issue but, as you mentioned, it contains some functional changes
> which may be of some importance in future.

Sorry for the noise. Didn't see the patch was already applied. So it's
okay as it is.

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

* Re: [PATCH] nfc: change order inside nfc_se_io error path
  2023-03-06 20:41     ` Fedor Pchelkin
@ 2023-03-06 20:58       ` Jakub Kicinski
  2023-03-06 21:26         ` [PATCH v2] " Fedor Pchelkin
  0 siblings, 1 reply; 8+ messages in thread
From: Jakub Kicinski @ 2023-03-06 20:58 UTC (permalink / raw)
  To: Fedor Pchelkin
  Cc: Krzysztof Kozlowski, David S. Miller, Eric Dumazet, Paolo Abeni,
	netdev, linux-kernel, Alexey Khoroshilov, lvc-project

On Mon, 6 Mar 2023 23:41:50 +0300 Fedor Pchelkin wrote:
> On Mon, Mar 06, 2023 at 11:35:09PM +0300, Fedor Pchelkin wrote:
> > On Mon, Mar 06, 2023 at 04:28:12PM +0100, Krzysztof Kozlowski wrote:  
> > > I would argue that it is functional. Running code in or outside of
> > > critical section/locks is quite functional change.
> > >   
> > 
> > Hmm, actually, yes. I'll resend v2 with changed commit info as 'no
> > functional changes' statement can probably be misunderstood later.
> > 
> > Should this patch be backported by the way? It doesn't seem to fix any
> > real issue but, as you mentioned, it contains some functional changes
> > which may be of some importance in future.  
> 
> Sorry for the noise. Didn't see the patch was already applied. So it's
> okay as it is.


As luck would have it it was applied to the wrong branch (we use main,
not master now). Script malfunction perhaps. So I'll toss it, you can
send a v2 with the updated commit message, please.

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

* [PATCH v2] nfc: change order inside nfc_se_io error path
  2023-03-06 20:58       ` Jakub Kicinski
@ 2023-03-06 21:26         ` Fedor Pchelkin
  2023-03-07  9:19           ` Krzysztof Kozlowski
  2023-03-07 21:50           ` patchwork-bot+netdevbpf
  0 siblings, 2 replies; 8+ messages in thread
From: Fedor Pchelkin @ 2023-03-06 21:26 UTC (permalink / raw)
  To: Jakub Kicinski
  Cc: Fedor Pchelkin, Krzysztof Kozlowski, David S. Miller,
	Eric Dumazet, Paolo Abeni, netdev, linux-kernel,
	Alexey Khoroshilov, lvc-project

cb_context should be freed on the error path in nfc_se_io as stated by
commit 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in
nfc_genl_se_io").

Make the error path in nfc_se_io unwind everything in reverse order, i.e.
free the cb_context after unlocking the device.

Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
---
v1->v2: remove 'no functional changes' statement from commit info

 net/nfc/netlink.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/nfc/netlink.c b/net/nfc/netlink.c
index 348bf561bc9f..b9264e730fd9 100644
--- a/net/nfc/netlink.c
+++ b/net/nfc/netlink.c
@@ -1446,8 +1446,8 @@ static int nfc_se_io(struct nfc_dev *dev, u32 se_idx,
 	return rc;
 
 error:
-	kfree(cb_context);
 	device_unlock(&dev->dev);
+	kfree(cb_context);
 	return rc;
 }
 
-- 
2.34.1


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

* Re: [PATCH v2] nfc: change order inside nfc_se_io error path
  2023-03-06 21:26         ` [PATCH v2] " Fedor Pchelkin
@ 2023-03-07  9:19           ` Krzysztof Kozlowski
  2023-03-07 21:50           ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-07  9:19 UTC (permalink / raw)
  To: Fedor Pchelkin, Jakub Kicinski
  Cc: David S. Miller, Eric Dumazet, Paolo Abeni, netdev, linux-kernel,
	Alexey Khoroshilov, lvc-project

On 06/03/2023 22:26, Fedor Pchelkin wrote:
> cb_context should be freed on the error path in nfc_se_io as stated by
> commit 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in
> nfc_genl_se_io").
> 
> Make the error path in nfc_se_io unwind everything in reverse order, i.e.
> free the cb_context after unlocking the device.
> 
> Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


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

* Re: [PATCH v2] nfc: change order inside nfc_se_io error path
  2023-03-06 21:26         ` [PATCH v2] " Fedor Pchelkin
  2023-03-07  9:19           ` Krzysztof Kozlowski
@ 2023-03-07 21:50           ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 8+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-03-07 21:50 UTC (permalink / raw)
  To: Fedor Pchelkin
  Cc: kuba, krzysztof.kozlowski, davem, edumazet, pabeni, netdev,
	linux-kernel, khoroshilov, lvc-project

Hello:

This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Tue,  7 Mar 2023 00:26:50 +0300 you wrote:
> cb_context should be freed on the error path in nfc_se_io as stated by
> commit 25ff6f8a5a3b ("nfc: fix memory leak of se_io context in
> nfc_genl_se_io").
> 
> Make the error path in nfc_se_io unwind everything in reverse order, i.e.
> free the cb_context after unlocking the device.
> 
> [...]

Here is the summary with links:
  - [v2] nfc: change order inside nfc_se_io error path
    https://git.kernel.org/netdev/net/c/7d834b4d1ab6

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

end of thread, other threads:[~2023-03-07 21:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-04 16:48 [PATCH] nfc: change order inside nfc_se_io error path Fedor Pchelkin
2023-03-06 15:28 ` Krzysztof Kozlowski
2023-03-06 20:35   ` Fedor Pchelkin
2023-03-06 20:41     ` Fedor Pchelkin
2023-03-06 20:58       ` Jakub Kicinski
2023-03-06 21:26         ` [PATCH v2] " Fedor Pchelkin
2023-03-07  9:19           ` Krzysztof Kozlowski
2023-03-07 21:50           ` patchwork-bot+netdevbpf

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).