lkml.org 
[lkml]   [2022]   [Jul]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH] drm/nouveau/bios: set info only when the return is not 0
    From
    Date
    On Mon, 2022-07-04 at 17:32 -0400, Lyude Paul wrote:
    > Reviewed-by: Lyude Paul <lyude@redhat.com>
    >
    > Currently on flakey internet in the back of a car, so I probably won't be
    > able
    > to push this until I get back tonight or early tomorrow

    Whoops! Slipped my mind when I got back, but I just remembered it now so I
    will go ahead and push :). apologies for the delay!

    >
    > On Sat, 2022-07-02 at 11:39 -0400, Tom Rix wrote:
    > > clang static analysis reports
    > > drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c:68:17: warning: The right
    > > operand of '*' is a garbage value [core.UndefinedBinaryOperatorResult]
    > >         switch (!!data * *ver) {
    > >                        ^ ~~~~
    > > A switch statement with only a default should be reduced to an if.
    > >
    > > If nvbios_pmuEp() returns 0, via the data variable, the output info
    > > parameter
    > > is not used.  So set info only when data is not 0.
    > >
    > > The struct nvbios_pmuE only has the type and data elements.  Since both of
    > > these
    > > are explicitly set, memset is not needed.  So remove it.
    > >
    > > Signed-off-by: Tom Rix <trix@redhat.com>
    > > ---
    > >  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c | 5 +----
    > >  1 file changed, 1 insertion(+), 4 deletions(-)
    > >
    > > diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c
    > > b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c
    > > index b4a308f3cf7b..49e2664a734c 100644
    > > --- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c
    > > +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c
    > > @@ -64,12 +64,9 @@ nvbios_pmuEp(struct nvkm_bios *bios, int idx, u8 *ver,
    > > u8
    > > *hdr,
    > >              struct nvbios_pmuE *info)
    > >  {
    > >         u32 data = nvbios_pmuEe(bios, idx, ver, hdr);
    > > -       memset(info, 0x00, sizeof(*info));
    > > -       switch (!!data * *ver) {
    > > -       default:
    > > +       if (data) {
    > >                 info->type = nvbios_rd08(bios, data + 0x00);
    > >                 info->data = nvbios_rd32(bios, data + 0x02);
    > > -               break;
    > >         }
    > >         return data;
    > >  }
    >

    --
    Cheers,
    Lyude Paul (she/her)
    Software Engineer at Red Hat

    \
     
     \ /
      Last update: 2022-07-15 21:11    [W:3.524 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site