lkml.org 
[lkml]   [2017]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:x86/cleanups] x86: Use ARRAY_SIZE
    Commit-ID:  0cfe5b5fc0277463fa795dea312a3a2fd5e8bac2
    Gitweb: https://git.kernel.org/tip/0cfe5b5fc0277463fa795dea312a3a2fd5e8bac2
    Author: Jérémy Lefaure <jeremy.lefaure@lse.epita.fr>
    AuthorDate: Sun, 1 Oct 2017 15:30:50 -0400
    Committer: Thomas Gleixner <tglx@linutronix.de>
    CommitDate: Thu, 19 Oct 2017 16:15:47 +0200

    x86: Use ARRAY_SIZE

    Using the ARRAY_SIZE macro improves the readability of the code.

    Found with Coccinelle with the following semantic patch:
    @r depends on (org || report)@
    type T;
    T[] E;
    position p;
    @@
    (
    (sizeof(E)@p /sizeof(*E))
    |
    (sizeof(E)@p /sizeof(E[...]))
    |
    (sizeof(E)@p /sizeof(T))
    )

    Signed-off-by: Jérémy Lefaure <jeremy.lefaure@lse.epita.fr>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Cc: linux-video@atrey.karlin.mff.cuni.cz
    Cc: Martin Mares <mj@ucw.cz>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Link: https://lkml.kernel.org/r/20171001193101.8898-13-jeremy.lefaure@lse.epita.fr

    ---
    arch/x86/boot/video-vga.c | 6 +++---
    arch/x86/entry/vdso/vdso2c.c | 3 ++-
    arch/x86/platform/intel-mid/device_libs/platform_gpio_keys.c | 5 ++---
    3 files changed, 7 insertions(+), 7 deletions(-)

    diff --git a/arch/x86/boot/video-vga.c b/arch/x86/boot/video-vga.c
    index 45bc940..a14c517 100644
    --- a/arch/x86/boot/video-vga.c
    +++ b/arch/x86/boot/video-vga.c
    @@ -241,9 +241,9 @@ static int vga_probe(void)
    vga_modes,
    };
    static int mode_count[] = {
    - sizeof(cga_modes)/sizeof(struct mode_info),
    - sizeof(ega_modes)/sizeof(struct mode_info),
    - sizeof(vga_modes)/sizeof(struct mode_info),
    + ARRAY_SIZE(cga_modes),
    + ARRAY_SIZE(ega_modes),
    + ARRAY_SIZE(vga_modes),
    };

    struct biosregs ireg, oreg;
    diff --git a/arch/x86/entry/vdso/vdso2c.c b/arch/x86/entry/vdso/vdso2c.c
    index 0780a44..4674f58 100644
    --- a/arch/x86/entry/vdso/vdso2c.c
    +++ b/arch/x86/entry/vdso/vdso2c.c
    @@ -65,6 +65,7 @@

    #include <linux/elf.h>
    #include <linux/types.h>
    +#include <linux/kernel.h>

    const char *outfilename;

    @@ -151,7 +152,7 @@ extern void bad_put_le(void);
    PLE(x, val, 64, PLE(x, val, 32, PLE(x, val, 16, LAST_PLE(x, val))))


    -#define NSYMS (sizeof(required_syms) / sizeof(required_syms[0]))
    +#define NSYMS ARRAY_SIZE(required_syms)

    #define BITSFUNC3(name, bits, suffix) name##bits##suffix
    #define BITSFUNC2(name, bits, suffix) BITSFUNC3(name, bits, suffix)
    diff --git a/arch/x86/platform/intel-mid/device_libs/platform_gpio_keys.c b/arch/x86/platform/intel-mid/device_libs/platform_gpio_keys.c
    index 7428387..e639e31 100644
    --- a/arch/x86/platform/intel-mid/device_libs/platform_gpio_keys.c
    +++ b/arch/x86/platform/intel-mid/device_libs/platform_gpio_keys.c
    @@ -62,10 +62,9 @@ static struct platform_device pb_device = {
    static int __init pb_keys_init(void)
    {
    struct gpio_keys_button *gb = gpio_button;
    - int i, num, good = 0;
    + int i, good = 0;

    - num = sizeof(gpio_button) / sizeof(struct gpio_keys_button);
    - for (i = 0; i < num; i++) {
    + for (i = 0; i < ARRAY_SIZE(gpio_button); i++) {
    gb[i].gpio = get_gpio_by_name(gb[i].desc);
    pr_debug("info[%2d]: name = %s, gpio = %d\n", i, gb[i].desc,
    gb[i].gpio);
    \
     
     \ /
      Last update: 2017-10-22 17:25    [W:4.102 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site