• J
    [IPV4]: Fix refcount damaging in net/ipv4/route.c · ce723d8e
    Julian Anastasov 提交于
    	One such place that can damage the dst refcnts is route.c with
    CONFIG_IP_ROUTE_MULTIPATH_CACHED enabled, i don't see the user's
    .config. In this new code i see that rt_intern_hash is called before
    dst->refcnt is set to 1, dst is the 2nd arg to rt_intern_hash.
    
    Arg 2 of rt_intern_hash must come with refcnt 1 as it is added to
    table or dropped depending on error/add/update. One such example is
    ip_mkroute_input where __mkroute_input return rth with refcnt 0 which
    is provided to rt_intern_hash. ip_mkroute_output looks like a 2nd such
    place. Appending untested patch for comments and review.  The idea is
    to put previous reference as we are going to return next result/error.
    Signed-off-by: NJulian Anastasov <ja@ssi.bg>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    ce723d8e
route.c 78.2 KB