Re: [PATCH] security/keys: Remove inconsistent __user annotation

From: Randy Dunlap
Date: Wed Sep 07 2022 - 10:06:06 EST




On 9/7/22 05:12, Vincenzo Frascino wrote:
> The declaration of keyring_read does not match the definition
> (security/keys/keyring.c). In this case the definition is correct
> because it matches what defined in "struct key_type::read"
> (linux/key-type.h).
>
> Fix the declaration removing the inconsistent __user annotation.
>
> Cc: David Howells <dhowells@xxxxxxxxxx>
> Cc: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
> Cc: Paul Moore <paul@xxxxxxxxxxxxxx>
> Cc: James Morris <jmorris@xxxxxxxxx>
> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx>
> ---
> Note: This issue was discovered during the porting of the linux kernel
> on Morello [1].
>
> [1] https://git.morello-project.org/morello/kernel/linux

FTR, I have sent this same patch 3 times.
Good luck.

> security/keys/keyring.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/security/keys/keyring.c b/security/keys/keyring.c
> index 5e6a90760753..4448758f643a 100644
> --- a/security/keys/keyring.c
> +++ b/security/keys/keyring.c
> @@ -79,7 +79,7 @@ static void keyring_revoke(struct key *keyring);
> static void keyring_destroy(struct key *keyring);
> static void keyring_describe(const struct key *keyring, struct seq_file *m);
> static long keyring_read(const struct key *keyring,
> - char __user *buffer, size_t buflen);
> + char *buffer, size_t buflen);
>
> struct key_type key_type_keyring = {
> .name = "keyring",

--
~Randy