• Pavel Emelianov's avatar
    Make common helpers for seq_files that work with list_heads · bcf67e16
    Pavel Emelianov authored
    Many places in kernel use seq_file API to iterate over a regular list_head.
    The code for such iteration is identical in all the places, so it's worth
    introducing a common helpers.
    
    This makes code about 300 lines smaller:
    
    The first version of this patch made the helper functions static inline
    in the seq_file.h header. This patch moves them to the fs/seq_file.c as
    Andrew proposed. The vmlinux .text section sizes are as follows:
    
    2.6.22-rc1-mm1:              0x001794d5
    with the previous version:   0x00179505
    with this patch:             0x00179135
    
    The config file used was make allnoconfig with the "y" inclusion of all
    the possible options to make the files modified by the patch compile plus
    drivers I have on the test node.
    
    This patch:
    
    Many places in kernel use seq_file API to iterate over a regular list_head.
    The code for such iteration is identical in all the places, so it's worth
    introducing a common helpers.
    Signed-off-by: default avatarPavel Emelianov <xemul@openvz.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    bcf67e16
seq_file.c 10.2 KB