Message ID | 6be62f21a1e9bf754e37f130d62870698b88a11c.1638539208.git.geert+renesas@glider.be |
---|---|
State | Accepted |
Commit | 49fdfe66400614ee1c484057c79dd6642c535fd4 |
Headers | show |
Series | [resend] gpiolib: Let gpiod_add_lookup_table() call gpiod_add_lookup_tables() | expand |
On Fri, Dec 3, 2021 at 2:48 PM Geert Uytterhoeven <geert+renesas@glider.be> wrote: > > This saves 20 bytes on arm32, and 44 bytes on arm64. > > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> > --- > Interestingly, making gpiod_add_lookup_table() a static inline function > in <linux/gpio/machine.h> instead would increase the caller's code size > by 68 bytes on arm32... > --- > drivers/gpio/gpiolib.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c > index abfbf546d1599ebc..85168f88a7fec774 100644 > --- a/drivers/gpio/gpiolib.c > +++ b/drivers/gpio/gpiolib.c > @@ -3487,11 +3487,7 @@ EXPORT_SYMBOL_GPL(gpiod_set_array_value_cansleep); > */ > void gpiod_add_lookup_table(struct gpiod_lookup_table *table) > { > - mutex_lock(&gpio_lookup_lock); > - > - list_add_tail(&table->list, &gpio_lookup_list); > - > - mutex_unlock(&gpio_lookup_lock); > + gpiod_add_lookup_tables(&table, 1); > } > EXPORT_SYMBOL_GPL(gpiod_add_lookup_table); > > -- > 2.25.1 > Applied, thanks! Bart
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index abfbf546d1599ebc..85168f88a7fec774 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -3487,11 +3487,7 @@ EXPORT_SYMBOL_GPL(gpiod_set_array_value_cansleep); */ void gpiod_add_lookup_table(struct gpiod_lookup_table *table) { - mutex_lock(&gpio_lookup_lock); - - list_add_tail(&table->list, &gpio_lookup_list); - - mutex_unlock(&gpio_lookup_lock); + gpiod_add_lookup_tables(&table, 1); } EXPORT_SYMBOL_GPL(gpiod_add_lookup_table);
This saves 20 bytes on arm32, and 44 bytes on arm64. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> --- Interestingly, making gpiod_add_lookup_table() a static inline function in <linux/gpio/machine.h> instead would increase the caller's code size by 68 bytes on arm32... --- drivers/gpio/gpiolib.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)