Defined in 1 files as a function:
Referenced in 12 files:
- drivers/infiniband/core/cma.c, line 1639
- drivers/net/geneve.c, line 2417
- drivers/scsi/cxgbi/libcxgbi.c, line 822
- include/net/ip6_route.h, line 110
- net/ipv6/anycast.c, line 109
- net/ipv6/icmp.c, line 913
- net/ipv6/ip6_gre.c, line 1161
- net/ipv6/ip6_tunnel.c
- net/ipv6/ip6_vti.c, line 685
- net/ipv6/mcast.c, line 185
- net/ipv6/netfilter/ip6t_rpfilter.c, line 80
- net/ipv6/route.c
Smatch caller information:
net/ipv6/netfilter/ip6t_rpfilter.c rpfilter_lookup_reverse6() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->rt6i_idev | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->rt6i_idev->dev | 0,4096-ptr_max |
| BUF_SIZE | 0 | rt | 144 |
| BUF_SIZE | 0 | rt | 144 |
| CAPPED_DATA | 0 | rt->rt6i_idev->dev | 1 |
| DATA_SOURCE | 0 | rt | r ip6_route_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &table->lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/scsi/cxgbi/libcxgbi.c cxgbi_check_route6() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 1-u64max |
| PARAM_VALUE | 0 | rt->dst.ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.ops->neigh_lookup | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.xfrm | 0 |
| DATA_SOURCE | 0 | rt | r find_route_ipv6 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &rx_queue_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/geneve.c geneve_link_config() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 0,4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.dev | 0,4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | &ops->srcu | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rx_queue_mutex |
net/ipv6/ip6_tunnel.c ip6_tnl_link_config() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &rtnl_mutex |
net/ipv6/ip6_tunnel.c ip6ip6_err() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 0,4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/ipv6/ip6_gre.c ip6gre_tnl_link_config_route() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.dev | 0,4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &rtnl_mutex |
drivers/infiniband/core/cma.c validate_ipv6_net_dev() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->rt6i_idev | 4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &lock | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &pool->lock |
net/ipv6/ip6_vti.c vti6_link_config() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 0,4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &rtnl_mutex |
net/ipv6/fib6_rules.c ip6_rt_put_flags() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | rt | (-1)-s32max |
| BUF_SIZE | 0 | rt | (-1)-s32max |
| CAPPED_DATA | 0 | &rt->dst.rt_uncached | 1 |
| DATA_SOURCE | 0 | rt | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
net/ipv6/anycast.c ipv6_sock_ac_join() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| CAPPED_DATA | 0 | rt->dst.dev_rcu | 1 |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| NS_CAPABLE | 0 | 12 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | sk |
net/ipv6/mcast.c ip6_mc_find_dev() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| CAPPED_DATA | 0 | rt->dst.dev_rcu | 1 |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | sk |
net/ipv6/route.c inet6_rtm_getroute() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.error | s16min-(-1),1-s16max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex |
net/ipv6/route.c inet6_rtm_getroute() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.error | 0 |
| CAPPED_DATA | 0 | rt | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex |
net/ipv6/route.c inet6_rtm_getroute() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| PARAM_VALUE | 0 | rt->dst.error | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex |
net/ipv6/icmp.c ip6_err_gen_icmpv6_unreach() -> ip6_rt_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rt | 4096-ptr_max |
| DATA_SOURCE | 0 | rt | r rt6_lookup |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |