mm/shmem.c: make array 'values' static const, makes object smaller
authorColin Ian King <colin.king@canonical.com>
Sun, 1 Dec 2019 01:58:04 +0000 (17:58 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 1 Dec 2019 20:59:10 +0000 (12:59 -0800)
Don't populate the array 'values' on the stack but instead make it static
const.  Makes the object code smaller by 111 bytes.

Before:
   text    data     bss     dec     hex filename
 108612   11169     512  120293   1d5e5 mm/shmem.o

After:
   text    data     bss     dec     hex filename
 108437   11233     512  120182   1d576 mm/shmem.o

(gcc version 9.2.1, amd64)

Link: http://lkml.kernel.org/r/20190906143012.28698-1-colin.king@canonical.com
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Hugh Dickins <hughd@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/shmem.c

index 60de3d9..6e4e742 100644 (file)
@@ -3932,7 +3932,7 @@ out2:
 static ssize_t shmem_enabled_show(struct kobject *kobj,
                struct kobj_attribute *attr, char *buf)
 {
-       int values[] = {
+       static const int values[] = {
                SHMEM_HUGE_ALWAYS,
                SHMEM_HUGE_WITHIN_SIZE,
                SHMEM_HUGE_ADVISE,