hv_netvsc: make const array ver_list static, reduces object code size
authorColin Ian King <colin.king@canonical.com>
Fri, 22 Sep 2017 15:50:23 +0000 (16:50 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 Sep 2017 23:25:17 +0000 (16:25 -0700)
Don't populate const array ver_list on the stack, instead make it
static. Makes the object code smaller by over 400 bytes:

Before:
   text    data     bss     dec     hex filename
  18444    3168     320   21932    55ac drivers/net/hyperv/netvsc.o

After:
   text    data     bss     dec     hex filename
  17950    3224     320   21494    53f6 drivers/net/hyperv/netvsc.o

(gcc 6.3.0, x86-64)

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/hyperv/netvsc.c

index 8d5077fb04929cb362e7266b45b04c1369ed1284..b0d323e2497815ccd33f1038390f10583257b6fa 100644 (file)
@@ -484,7 +484,7 @@ static int netvsc_connect_vsp(struct hv_device *device,
                              struct netvsc_device *net_device,
                              const struct netvsc_device_info *device_info)
 {
-       const u32 ver_list[] = {
+       static const u32 ver_list[] = {
                NVSP_PROTOCOL_VERSION_1, NVSP_PROTOCOL_VERSION_2,
                NVSP_PROTOCOL_VERSION_4, NVSP_PROTOCOL_VERSION_5
        };