Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/net/vrf.c vrf_rt6_release() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->lock

drivers/net/vrf.c vrf_rtable_release() -> dst_dev_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

net/ipv4/fib_semantics.c rt_fibinfo_free() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_semantics.c rt_fibinfo_free_cpus() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/route.c fib6_nh_release_dsts() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/route.c rt6_get_pcpu_route() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
LOCK2 rcu_read

net/ipv6/route.c rt6_make_pcpu_route() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 4096-ptr_max
PARAM_VALUE 0 dst->error (-113),(-22),(-13),(-11),0
PARAM_VALUE 0 dst->input 1085213014602391552,1459235060270694400,1783762990822887424,6867859413902737408,8240822772579913728,8371507639691730944,8442701487233740800
PARAM_VALUE 0 dst->lwtstate 1-u64max
PARAM_VALUE 0 dst->output 1359104979572629504,2029074294825594880,3542095022991495168,5088972849622437888,7508766211280719872,8339822976769409024
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &net->ipv4.mfc_mutex
HALF_LOCKED2 &net->ipv6.mfc_mutex

net/ipv6/route.c rt6_remove_exception() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 4096-ptr_max
PARAM_VALUE 0 dst->dev 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rt6_exception_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv4/route.c fnhe_flush_routes() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
LOCK2 global &fnhe_lock
HALF_LOCKED2 rcu_read

net/ipv4/route.c fnhe_flush_routes() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
LOCK2 global &fnhe_lock
HALF_LOCKED2 rcu_read

net/ipv4/route.c rt_bind_exception() -> dst_dev_put()

Type Parameter Key Value
PARAM_VALUE 0 dst 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
LOCK2 global &fnhe_lock
LOCK2 rcu_read