Re: [PATCH] capabilities: fix sparse warning about __user access

From: Paul Moore
Date: Wed Jul 05 2023 - 18:47:12 EST


On Wed, Jun 21, 2023 at 9:43 AM Serge Hallyn <serge@xxxxxxxxxx> wrote:
> On Mon, Jun 19, 2023 at 05:47:54PM -0400, Paul Moore wrote:
> > On Mon, Jun 19, 2023 at 1:57 PM Serge E. Hallyn <serge@xxxxxxxxxx> wrote:
> > >
> > > On Mon, Jun 19, 2023 at 01:35:35PM +0100, Ben Dooks wrote:
> > > > The two syscalls for capget and capset are producing sparse warnings
> > > > as sparse is thinking that the "struct __user_cap_data_struct" is marked
> > > > user, which seems to be down to the declaration and typedef at the same
> > > > time.
> > > >
> > > > Fix the following warnings by splutting the struct declaration and then
> > > > the user typedef into two:
> > >
> > > I'm not a fan of making code changes to work around scanners'
> > > shortcomings, mainly because eventually I assume the scanners
> > > will learn to deal with it.
> > >
> > > However, I don't like the all-in-one typedef+struct definition
> > > either, so let's go with it :)
> > >
> > > Paul, do you mind picking this up?
> >
> > Sure, no problem. Since we are at -rc7, I'm assuming this can wait
> > until after the merge window?
>
> Yeah, it's just fixing a sparse warning, no urgency.

Actually, this looks like a dup of 55382134366e ("capability: erase
checker warnings about struct __user_cap_data_struct") which is
currently in Linus' tree.

Thank you for your patch Ben, but it looks as if we had a patch a
couple of weeks before yours which fixed the same problem. If you
notice continuing problems with the latest kernel sources from Linus
please let us know.

--
paul-moore.com