Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

net/netfilter/ipvs/ip_vs_xmit.c ip_vs_icmp_xmit() -> rt_is_input_route()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/netfilter/ipvs/ip_vs_xmit.c ip_vs_nat_xmit() -> rt_is_input_route()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv4/icmp.c __icmp_send() -> rt_is_input_route()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
DATA_SOURCE 0 rt r skb_rtable
BIT_INFO 0 rt->rt_flags 0x0,0x4fffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &x->lock

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

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->rt_is_input 0-1
CAPPED_DATA 0 rt->dst.dev->nd_net.net 1
DATA_SOURCE 0 rt $0
BIT_INFO 0 rt->dst.output 0x5102001000000,0x7fff7f3fbffff000
BIT_INFO 0 rt->rt_flags 0x0,0xb0000000
BIT_INFO 0 rt->rt_type 0x0,0xff
HARD_MAX 0 rt->rt_is_input 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 rt->rt_iif s32min-(-1),1-s32max
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.tx_bytes
LOCK2 bh
LOCK2 global &fnhe_lock
LOCK2 rcu_read

net/ipv4/route.c rt_cache_route() -> rt_is_input_route()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->rt_is_input 0-1
DATA_SOURCE 0 rt $1
BIT_INFO 0 rt->dst.output 0x4000000000000,0x7fff7f3fbffff000
BIT_INFO 0 rt->rt_flags 0x0,0xb0000000
BIT_INFO 0 rt->rt_type 0x0,0xff
HARD_MAX 0 rt->rt_is_input 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 rt->rt_iif s32min-(-1),1-s32max
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.tx_bytes
LOCK2 rcu_read

net/ipv4/route.c rt_fill_info() -> rt_is_input_route()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
BUF_SIZE 0 rt (-1)-s32max
BUF_SIZE 0 rt (-1)-s32max
DATA_SOURCE 0 rt $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 rt->rt_gw4 0-u32max[c]
USER_DATA 0 rt->rt_iif s32min-(-1),1-s32max
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.tx_bytes
LOCK2 rcu_read
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
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/ipv4/route.c rt_fill_info() -> rt_is_input_route()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
BUF_SIZE 0 rt (-1)-s32max
BUF_SIZE 0 rt (-1)-s32max
DATA_SOURCE 0 rt $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 rt->rt_gw4 0-u32max[c]
USER_DATA 0 rt->rt_iif s32min-(-1),1-s32max
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 rt->dev->stats.tx_bytes
LOCK2 rcu_read
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
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