• Joe Perches's avatar
    ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> · a9a79dfe
    Joe Perches authored
    Saves text by removing nearly duplicated text format strings by
    creating ata_<foo>_printk functions and printf extension %pV.
    
    ata defconfig size shrinks ~5% (~8KB), allyesconfig ~2.5% (~13KB)
    
    Format string duplication comes from:
    
     #define ata_link_printk(link, lv, fmt, args...) do { \
           if (sata_pmp_attached((link)->ap) || (link)->ap->slave_link)    \
                   printk("%sata%u.%02u: "fmt, lv, (link)->ap->print_id,   \
                          (link)->pmp , ##args); \
           else \
                   printk("%sata%u: "fmt, lv, (link)->ap->print_id , ##args); \
           } while(0)
    
    Coalesce long formats.
    
    $ size drivers/ata/built-in.*
       text	   data	    bss	    dec	    hex	filename
     544969	  73893	 116584	 735446	  b38d6	drivers/ata/built-in.allyesconfig.ata.o
     558429	  73893	 117864	 750186	  b726a	drivers/ata/built-in.allyesconfig.dev_level.o
     141328	  14689	   4220	 160237	  271ed	drivers/ata/built-in.defconfig.ata.o
     149567	  14689	   4220	 168476	  2921c	drivers/ata/built-in.defconfig.dev_level.o
    Signed-off-by: default avatarJoe Perches <joe@perches.com>
    Signed-off-by: default avatarJeff Garzik <jgarzik@pobox.com>
    a9a79dfe
pata_legacy.c 34.4 KB