[lustre-devel] [PATCH] staging: lustre: Fix a spatch warning due to an assignment from kernel to user space

Quentin Lambert lambert.quentin at gmail.com
Fri Dec 2 09:33:32 PST 2016


lnet_ipif_enumerate was assigning a pointer from kernel space to user
space. This patch uses copy_to_user to properly do that assignment.

Signed-off-by: Quentin Lambert <lambert.quentin at gmail.com>
---
 shouldn't we be using ifc_req instead of ifc_buf?

 drivers/staging/lustre/lnet/lnet/lib-socket.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

--- a/drivers/staging/lustre/lnet/lnet/lib-socket.c
+++ b/drivers/staging/lustre/lnet/lnet/lib-socket.c
@@ -181,7 +181,13 @@ lnet_ipif_enumerate(char ***namesp)
 			goto out0;
 		}
 
-		ifc.ifc_buf = (char *)ifr;
+		rc = copy_to_user(ifc.ifc_buf, (char *)ifr,
+				  nalloc * sizeof(*ifr));
+		if (rc) {
+			rc = -ENOMEM;
+			goto out1;
+		}
+
 		ifc.ifc_len = nalloc * sizeof(*ifr);
 
 		rc = lnet_sock_ioctl(SIOCGIFCONF, (unsigned long)&ifc);


More information about the lustre-devel mailing list