lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aKAjCoF9cT3VEbSE@bhairav-test.ee.iitb.ac.in>
Date: Sat, 16 Aug 2025 11:49:54 +0530
From: Akhilesh Patil <akhilesh@...iitb.ac.in>
To: saeedm@...dia.com, itayavr@...dia.com, dave.jiang@...el.com,
	alison.schofield@...el.com, jgg@...pe.ca,
	Jonathan.Cameron@...wei.com, Markus.Elfring@....de
Cc: linux-kernel@...r.kernel.org, akhileshpatilvnit@...il.com,
	skhan@...uxfoundation.org
Subject: [PATCH v2] fwctl: mlx5: fix memory alloc/free in mlx5ctl_fw_rpc()

Use kvfree() to free memory allocated by kvzalloc() instead of kfree().
Avoid potential memory management issue considering kvzalloc() can
internally choose to use either kmalloc() or vmalloc() based on memory
request and current system memory state. Hence, use more appropriate
kvfree() which automatically determines correct free method to avoid
potential hard to debug memory issues.
Fix this issue discovered by running spatch static analysis tool using
coccinelle script - scripts/coccinelle/api/kfree_mismatch.cocci

Fixes: 52929c2142041 ("fwctl/mlx5: Support for communicating with mlx5 fw")
Signed-off-by: Akhilesh Patil <akhilesh@...iitb.ac.in>
Reviewed-by: Dave Jiang <dave.jiang@...el.com>
---
changes v1 -> v2:
- Update commit message with details on why this issue needs to be fixed
  as suggested by Alison <alison.schofield@...el.com>
- Update commit message with details on how this issue was discovered
  using coccinelle scripts as suggested by Markus <Markus.Elfring@....de>
- Carry forward Reviewd-by tag from Dave Jiang <dave.jiang@...el.com>
---
 drivers/fwctl/mlx5/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/fwctl/mlx5/main.c b/drivers/fwctl/mlx5/main.c
index f93aa0cecdb9..4b379f695eb7 100644
--- a/drivers/fwctl/mlx5/main.c
+++ b/drivers/fwctl/mlx5/main.c
@@ -345,7 +345,7 @@ static void *mlx5ctl_fw_rpc(struct fwctl_uctx *uctx, enum fwctl_rpc_scope scope,
 	 */
 	if (ret && ret != -EREMOTEIO) {
 		if (rpc_out != rpc_in)
-			kfree(rpc_out);
+			kvfree(rpc_out);
 		return ERR_PTR(ret);
 	}
 	return rpc_out;
-- 
2.34.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ