• Vlad Buslov's avatar
    net: sched: split tc_ctl_tfilter into three handlers · c431f89b
    Vlad Buslov authored
    tc_ctl_tfilter handles three netlink message types: RTM_NEWTFILTER,
    RTM_DELTFILTER, RTM_GETTFILTER. However, implementation of this function
    involves a lot of branching on specific message type because most of the
    code is message-specific. This significantly complicates adding new
    functionality and doesn't provide much benefit of code reuse.
    
    Split tc_ctl_tfilter to three standalone functions that handle filter new,
    delete and get requests.
    
    The only truly protocol independent part of tc_ctl_tfilter is code that
    looks up queue, class, and block. Refactor this code to standalone
    tcf_block_find function that is used by all three new handlers.
    Signed-off-by: default avatarVlad Buslov <vladbu@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    c431f89b
cls_api.c 42.9 KB