[PATCH] net: devlink: Fix missing mutex_unlock() call

Ammar Faizi posted 1 patch 3 years, 8 months ago
net/core/devlink.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
[PATCH] net: devlink: Fix missing mutex_unlock() call
Posted by Ammar Faizi 3 years, 8 months ago
From: Ammar Faizi <ammarfaizi2@gnuweeb.org>

Commit 2dec18ad826f forgets to call mutex_unlock() before the function
returns in the error path:

   New smatch warnings:
   net/core/devlink.c:6392 devlink_nl_cmd_region_new() warn: inconsistent \
   returns '&region->snapshot_lock'.

Make sure we call mutex_unlock() in this error path.

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: 2dec18ad826f52658f7781ee995d236cc449b678 ("net: devlink: remove region snapshots list dependency on devlink->lock")
Signed-off-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
---
 net/core/devlink.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/net/core/devlink.c b/net/core/devlink.c
index 889e7e3d3e8a..5da5c7cca98a 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -6315,8 +6315,10 @@ devlink_nl_cmd_region_new(struct sk_buff *skb, struct genl_info *info)
 
 		snapshot = devlink_region_snapshot_get_by_id(region,
 							     snapshot_id);
-		if (WARN_ON(!snapshot))
-			return -EINVAL;
+		if (WARN_ON(!snapshot)) {
+			err = -EINVAL;
+			goto unlock;
+		}
 
 		msg = devlink_nl_region_notify_build(region, snapshot,
 						     DEVLINK_CMD_REGION_NEW,

base-commit: 0a324c3263f1e456f54dd8dc8ce58575aea776bc
-- 
Ammar Faizi
Re: [PATCH] net: devlink: Fix missing mutex_unlock() call
Posted by patchwork-bot+netdevbpf@kernel.org 3 years, 8 months ago
Hello:

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

On Mon,  1 Aug 2022 18:59:56 +0700 you wrote:
> From: Ammar Faizi <ammarfaizi2@gnuweeb.org>
> 
> Commit 2dec18ad826f forgets to call mutex_unlock() before the function
> returns in the error path:
> 
>    New smatch warnings:
>    net/core/devlink.c:6392 devlink_nl_cmd_region_new() warn: inconsistent \
>    returns '&region->snapshot_lock'.
> 
> [...]

Here is the summary with links:
  - net: devlink: Fix missing mutex_unlock() call
    https://git.kernel.org/netdev/net-next/c/80ef928643c1

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Re: [PATCH] net: devlink: Fix missing mutex_unlock() call
Posted by Jiri Pirko 3 years, 8 months ago
Mon, Aug 01, 2022 at 01:59:56PM CEST, ammarfaizi2@gnuweeb.org wrote:
>From: Ammar Faizi <ammarfaizi2@gnuweeb.org>
>
>Commit 2dec18ad826f forgets to call mutex_unlock() before the function
>returns in the error path:
>
>   New smatch warnings:
>   net/core/devlink.c:6392 devlink_nl_cmd_region_new() warn: inconsistent \
>   returns '&region->snapshot_lock'.
>
>Make sure we call mutex_unlock() in this error path.
>
>Reported-by: kernel test robot <lkp@intel.com>
>Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
>Fixes: 2dec18ad826f52658f7781ee995d236cc449b678 ("net: devlink: remove region snapshots list dependency on devlink->lock")
>Signed-off-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>

Reviewed-by: Jiri Pirko <jiri@nvidia.com>

Thanks for the fix!