[PATCH] kernel/signal.c: spare fix on copy_siginfo_from_user_any()

From: Ben Dooks
Date: Tue Oct 15 2019 - 05:28:31 EST


The copy_siginfo_from_user_any() should have __user attribute
on the siginfo_t *info pointer. Fix the following sparse warnings
by adding __user.

kernel/signal.c:3676:46: warning: incorrect type in argument 2 (different address spaces)
kernel/signal.c:3676:46: expected struct siginfo const [noderef] [usertype] <asn:1> *from
kernel/signal.c:3676:46: got struct siginfo [usertype] *info
kernel/signal.c:3736:58: warning: incorrect type in argument 2 (different address spaces)
kernel/signal.c:3736:58: expected struct siginfo [usertype] *info
kernel/signal.c:3736:58: got struct siginfo [noderef] [usertype] <asn:1> *info

Signed-off-by: Ben Dooks <ben.dooks@xxxxxxxxxxxxxxx>
---
Cc: linux-kernel@xxxxxxxxxxxxxxx
---
kernel/signal.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/kernel/signal.c b/kernel/signal.c
index c4da1ef56fdf..94985c756693 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -3661,7 +3661,8 @@ static bool access_pidfd_pidns(struct pid *pid)
return true;
}

-static int copy_siginfo_from_user_any(kernel_siginfo_t *kinfo, siginfo_t *info)
+static int copy_siginfo_from_user_any(kernel_siginfo_t *kinfo,
+ siginfo_t __user *info)
{
#ifdef CONFIG_COMPAT
/*
--
2.23.0