HID: asus: make array 'buf' static const
authorColin Ian King <colin.king@canonical.com>
Sat, 6 Jan 2018 15:50:27 +0000 (15:50 +0000)
committerJiri Kosina <jkosina@suse.cz>
Fri, 16 Feb 2018 12:34:28 +0000 (13:34 +0100)
Don't populate the const read-only array 'buf' on the stack but instead
make it static. Makes the object code smaller by 26 bytes:

Before:
   text    data     bss     dec     hex filename
  14378    2384      64   16826    41ba linux/drivers/hid/hid-asus.o

After:
   text    data     bss     dec     hex filename
  14296    2440      64   16800    41a0 linux/drivers/hid/hid-asus.o

(gcc version 7.2.0 x86_64)

[jkosina@suse.cz: change commit message slightly]
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-asus.c

index 88b9703318e404602f8b4733552d0d06be363103..d92f8aa2876b47e725f0084ad2d33c14a9e82186 100644 (file)
@@ -570,7 +570,9 @@ static int asus_input_mapping(struct hid_device *hdev,
 static int asus_start_multitouch(struct hid_device *hdev)
 {
        int ret;
-       const unsigned char buf[] = { FEATURE_REPORT_ID, 0x00, 0x03, 0x01, 0x00 };
+       static const unsigned char buf[] = {
+               FEATURE_REPORT_ID, 0x00, 0x03, 0x01, 0x00
+       };
        unsigned char *dmabuf = kmemdup(buf, sizeof(buf), GFP_KERNEL);
 
        if (!dmabuf) {