head_up parameter is marked with __user attribute, tmp is filled
by a copy_from_user from next, that is also marked as __user, so
tmp.next needs to be "casted" as __user to make sparse happy.

Signed-off-by: Marcos Paulo de Souza <marcos.souza....@gmail.com>
---

 this is mt first patch addressing an issue of sparse, so let me know
 if I misunderstood the error message

 drivers/staging/lustre/lnet/selftest/conrpc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/lustre/lnet/selftest/conrpc.c 
b/drivers/staging/lustre/lnet/selftest/conrpc.c
index c6a683b..fb7ad74 100644
--- a/drivers/staging/lustre/lnet/selftest/conrpc.c
+++ b/drivers/staging/lustre/lnet/selftest/conrpc.c
@@ -487,7 +487,7 @@ lstcon_rpc_trans_interpreter(struct lstcon_rpc_trans *trans,
                                   sizeof(struct list_head)))
                        return -EFAULT;
 
-               if (tmp.next == head_up)
+               if ((struct list_head __user *)tmp.next == head_up)
                        return 0;
 
                next = tmp.next;
-- 
2.9.3

Reply via email to