[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 5/7] gpio: Add GPIO Aggregator/Repeater driver
From: |
Geert Uytterhoeven |
Subject: |
Re: [PATCH v3 5/7] gpio: Add GPIO Aggregator/Repeater driver |
Date: |
Wed, 27 Nov 2019 15:33:34 +0100 |
Hi Eugeniu,
On Wed, Nov 27, 2019 at 3:15 PM Eugeniu Rosca <address@hidden> wrote:
> On Wed, Nov 27, 2019 at 09:42:51AM +0100, Geert Uytterhoeven wrote:
> > +static bool isrange(const char *s)
> > +{
> > + size_t n = strlen(s);
>
> Cppcheck 1.40-18521-ge6d692d96058:
> drivers/gpio/gpio-aggregator.c:69:11: style: Variable 'n' is assigned a value
> that is never used. [unreadVariable]
>
> Smatch v0.5.0-6150-gc1ed13e4ee7b:
> drivers/gpio/gpio-aggregator.c:69 isrange() warn: unused return: n = strlen()
Correct, this is a remainder of code present temporarily during development.
Will drop.
(where are the days gcc itself warned about that?)
> > + aggr->lookups->dev_id = kasprintf(GFP_KERNEL, "%s.%d", DRV_NAME, id);
> > + if (!aggr->lookups) {
> > + res = -ENOMEM;
> > + goto remove_idr;
> > + }
>
> s/aggr->lookups/aggr->lookups->dev_id/ ?
Thanks, will fix.
> > +static int gpio_fwd_get_multiple(struct gpio_chip *chip, unsigned long
> > *mask,
> > + unsigned long *bits)
> > +{
> > + struct gpiochip_fwd *fwd = gpiochip_get_data(chip);
> > + unsigned long *values, flags;
>
> gcc 9.2.1:
> warning: ‘flags’ may be used uninitialized in this function
> [-Wmaybe-uninitialized]
>
> [..]
>
> > +static void gpio_fwd_set_multiple(struct gpio_chip *chip, unsigned long
> > *mask,
> > + unsigned long *bits)
> > +{
> > + struct gpiochip_fwd *fwd = gpiochip_get_data(chip);
> > + unsigned long *values, flags;
>
> gcc 9.2.1, same as above:
> warning: ‘flags’ may be used uninitialized in this function
> [-Wmaybe-uninitialized]
So newer gcc is (again) no longer smart enough to notice the check is
the same for initializer and user...
> Should these be silenced like in 2bf593f101f3ca ("xilinx_uartps.c:
> suppress "may be used uninitialised" warning") ?
TBH, I'm not a big fan of silencing false positives.
But if people like to see flags preinitialized to zero, that can be done...
> I plan to do some runtime testing soon.
Thanks, looking forward to the results!
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- address@hidden
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
- [PATCH v3 4/7] dt-bindings: gpio: Add gpio-repeater bindings, (continued)
- [PATCH v3 4/7] dt-bindings: gpio: Add gpio-repeater bindings, Geert Uytterhoeven, 2019/11/27
- [PATCH v3 1/7] gpiolib: Add GPIOCHIP_NAME definition, Geert Uytterhoeven, 2019/11/27
- [PATCH v3 2/7] gpiolib: Add support for gpiochipN-based table lookup, Geert Uytterhoeven, 2019/11/27
- [PATCH v3 6/7] docs: gpio: Add GPIO Aggregator/Repeater documentation, Geert Uytterhoeven, 2019/11/27
- [PATCH v3 5/7] gpio: Add GPIO Aggregator/Repeater driver, Geert Uytterhoeven, 2019/11/27