Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 11 files:

Smatch caller information:

drivers/net/ifb.c ifb_init_module() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 1824583183996030976
NOCHECK_CALL

net/ipv4/nexthop.c rtm_del_nexthop() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/ipv4/nexthop.c rtm_new_nexthop() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/ipv4/fib_frontend.c fib_net_init() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.notifier_ops->list.next 4096-ptr_max
PARAM_VALUE 0 net->ipv4.rules_ops->action 1-u64max
PARAM_VALUE 0 net->ipv4.rules_ops->compare 1-u64max
PARAM_VALUE 0 net->ipv4.rules_ops->configure 1-u64max
PARAM_VALUE 0 net->ipv4.rules_ops->fill 1-u64max
PARAM_VALUE 0 net->ipv4.rules_ops->fro_net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.rules_ops->list.next 4096-ptr_max
PARAM_VALUE 0 net->ipv4.rules_ops->lock.first_waiter 0
PARAM_VALUE 0 net->ipv4.rules_ops->lock.magic 4096-ptr_max
PARAM_VALUE 0 net->ipv4.rules_ops->lock.owner.counter 0
PARAM_VALUE 0 net->ipv4.rules_ops->match 1-u64max
PARAM_VALUE 0 net->ipv4.rules_ops->rule_size 160-4000000
PARAM_VALUE 0 net->ipv4.rules_ops->rules_list.next 4096-ptr_max
PARAM_VALUE 0 net->notrefcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 0 net->notrefcnt_tracker.list.next->prev 4096-ptr_max
PARAM_VALUE 0 net->proc_net->nlink 0-4294967295
PARAM_VALUE 0 net->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 0 net->refcnt_tracker.list.next->prev 4096-ptr_max
BUF_SIZE 0 net->key_domain (-1),24
BUF_SIZE 0 net->ucounts (-1),184
CAPPED_DATA 0 net->ipv4.fib_info_hash 1
DATA_SOURCE 0 net $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &pernet_ops_rwsem

net/ipv4/fib_frontend.c inet_rtm_delroute() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/ipv4/fib_frontend.c inet_rtm_newroute() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/ipv4/fib_frontend.c ip_rt_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/fib_rules.c fib_newrule() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.fib_has_custom_rules 0
DATA_SOURCE 0 net $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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/core/dev_ioctl.c dev_ifconf() -> rtnl_net_lock()

Type Parameter Key Value
DATA_SOURCE 0 net $0
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/dev_ioctl.c dev_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/dev_ioctl.c dev_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/dev_ioctl.c dev_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
DATA_SOURCE 0 net $0
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv6/addrconf.c addrconf_add_ifaddr() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv6/addrconf.c addrconf_cleanup() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 1824583183996030976
NOCHECK_CALL

net/ipv6/addrconf.c addrconf_dad_work() -> rtnl_net_lock()

Type Parameter Key Value
NOCHECK_CALL
UNITS 0 net unit_byte
HALF_LOCKED2 &pool->lock

net/ipv6/addrconf.c addrconf_del_ifaddr() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv6/addrconf.c addrconf_init() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 1824583183996030976
NOCHECK_CALL

net/ipv6/addrconf.c addrconf_set_dstaddr() -> rtnl_net_lock()

Type Parameter Key Value
DATA_SOURCE 0 net $0
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv6/addrconf.c addrconf_verify_work() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/ipv6/addrconf.c inet6_rtm_deladdr() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/addrconf.c inet6_rtm_newaddr() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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

drivers/net/loopback.c blackhole_netdev_init() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 1824583183996030976
NOCHECK_CALL

net/ipv4/arp.c arp_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv4/arp.c arp_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
DATA_SOURCE 0 net $0
NS_CAPABLE 0 12
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/dev.c register_netdevice_notifier_net() -> rtnl_net_lock()

Type Parameter Key Value
BUF_SIZE 0 net (-1)-s32max
BUF_SIZE 0 net (-1)-s32max
BUF_SIZE 0 net->key_domain (-1),24
BUF_SIZE 0 net->ucounts (-1),184
DATA_SOURCE 0 net $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->intf_state_mutex
HALF_LOCKED2 &dev->priv.hca_devcom_comp->comp->sem
HALF_LOCKED2 global &pernet_ops_rwsem

net/core/dev.c rtnl_net_dev_lock() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte

net/core/dev.c unregister_netdevice_notifier_net() -> rtnl_net_lock()

Type Parameter Key Value
BUF_SIZE 0 net (-1),10432,10496
BUF_SIZE 0 net (-1),10432,10496
DATA_SOURCE 0 net $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
HALF_LOCKED2 &dev->intf_state_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

net/core/rtnetlink.c rtnl_dellink() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/core/rtnetlink.c rtnl_net_work_func() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
CAPPED_DATA 0 &net->dev_unreg_head 1
PARAM_COMPARE 0 &net->dev_unreg_head != $0->dev_unreg_head.next
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/ipv4/devinet.c check_lifetime() -> rtnl_net_lock()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.inet_addr_lst 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/ipv4/devinet.c devinet_ioctl() -> rtnl_net_lock()

Type Parameter Key Value
DATA_SOURCE 0 net $0
NOCHECK_CALL
UNITS 0 net unit_byte

net/ipv4/devinet.c inet_rtm_deladdr() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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/ipv4/devinet.c inet_rtm_newaddr() -> rtnl_net_lock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
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