Re: [PATCH] nfc: change order inside nfc_se_io error path

From: Krzysztof Kozlowski
Date: Mon Mar 06 2023 - 10:28:51 EST


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@xxxxxxxxxx>
> Signed-off-by: Fedor Pchelkin <pchelkin@xxxxxxxxx>
> ---
> 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@xxxxxxxxxx>

>

Best regards,
Krzysztof