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

From: Paul Moore
Date: Wed Sep 07 2022 - 11:43:38 EST


On Wed, Sep 7, 2022 at 10:06 AM Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> 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.

David or Jarkko, this patch is both trivial and obviously correct,
please merge this into the keys tree for the next merge window else
I'll take it via the LSM tree.

Reviewed-by: Paul Moore <paul@xxxxxxxxxxxxxx>

> > 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",

--
paul-moore.com