summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Dewar <alex.dewar@gmx.co.uk>2020-08-06 19:56:15 +0100
committerMichael S. Tsirkin <mst@redhat.com>2020-08-10 09:01:21 -0400
commit05acc4beb24c7e5ed3ae20a3d3ab2b29b40cb385 (patch)
tree2bbc1c3defa4f67ddcc1718e8c12ec69d7853863
parent1e3e792650d2c0df8dd796906275b7c79e278664 (diff)
downloadlinux-05acc4beb24c7e5ed3ae20a3d3ab2b29b40cb385.tar.gz
vdpa/mlx5: Fix uninitialised variable in core/mr.c
If the kernel is unable to allocate memory for the variable dmr then
err will be returned without being set. Set err to -ENOMEM in this
case.

Fixes: 94abbccdf291 ("vdpa/mlx5: Add shared memory registration code")
Addresses-Coverity: ("Uninitialized variables")
Signed-off-by: Alex Dewar <alex.dewar@gmx.co.uk>
Link: https://lore.kernel.org/r/20200806185625.67344-1-alex.dewar@gmx.co.uk
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Acked-by: Eli Cohen <eli@mellanox.com>
-rw-r--r--drivers/vdpa/mlx5/core/mr.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/vdpa/mlx5/core/mr.c b/drivers/vdpa/mlx5/core/mr.c
index f5dec0274133..ef1c550f8266 100644
--- a/drivers/vdpa/mlx5/core/mr.c
+++ b/drivers/vdpa/mlx5/core/mr.c
@@ -319,8 +319,10 @@ static int add_direct_chain(struct mlx5_vdpa_dev *mvdev, u64 start, u64 size, u8
 	while (size) {
 		sz = (u32)min_t(u64, MAX_KLM_SIZE, size);
 		dmr = kzalloc(sizeof(*dmr), GFP_KERNEL);
-		if (!dmr)
+		if (!dmr) {
+			err = -ENOMEM;
 			goto err_alloc;
+		}
 
 		dmr->start = st;
 		dmr->end = st + sz;