Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/ipv6/ip6_fib.c fib6_clean_node() -> fib6_del()

Type Parameter Key Value
PARAM_VALUE 0 rt 1-u64max
PARAM_VALUE 0 rt->nh 0
PARAM_VALUE 1 info 859646006059462656
PARAM_VALUE 1 info->nlh 0
PARAM_VALUE 1 info->portid 0
PARAM_VALUE 1 info->skip_notify_kernel 0
PARAM_VALUE 2 del_reason 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &iter->tbl->tb6_lock
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 &table->tb6_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock

net/ipv6/ip6_fib.c fib6_gc_table() -> fib6_del()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->expires 1-u64max
PARAM_VALUE 0 rt->fib6_flags 4194304-u32max
PARAM_VALUE 1 info 2991234270557372416
PARAM_VALUE 1 info->nlh 0
PARAM_VALUE 1 info->portid 0
PARAM_VALUE 1 info->skip_notify 0
PARAM_VALUE 1 info->skip_notify_kernel 0
PARAM_VALUE 2 del_reason 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &net->ipv6.fib6_gc_lock
LOCK2 &tb6->tb6_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock
TYPE_LOCK (struct netns_ipv6)->fib6_gc_lock

net/ipv6/route.c __ip6_del_rt() -> fib6_del()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->fib6_table 4096-ptr_max
PARAM_VALUE 0 rt->fib6_table->tb6_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->nl_net 4096-ptr_max
DATA_SOURCE 0 rt $0
DATA_SOURCE 1 info $1
DATA_SOURCE 2 del_reason $2
PREEMPT_ADD <- disables preempt
LOCK2 &table->tb6_lock
LOCK2 bh
TYPE_LOCK (struct fib6_table)->tb6_lock

net/ipv6/route.c __ip6_del_rt_siblings() -> fib6_del()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->fib6_node->leaf->fib6_nh->nh_common.nhc_gw_family 0-255
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->nl_net 4096-ptr_max
PARAM_VALUE 1 info->skip_notify_kernel 1
PARAM_VALUE 2 del_reason 0
BUF_SIZE 1 info 24
CAPPED_DATA 0 &rt->fib6_siblings 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &table->tb6_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock

net/ipv6/route.c __ip6_del_rt_siblings() -> fib6_del()

Type Parameter Key Value
PARAM_VALUE 0 rt 4096-ptr_max
PARAM_VALUE 0 rt->fib6_ref.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 rt->fib6_table 4096-ptr_max
PARAM_VALUE 0 rt->fib6_table->tb6_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 rt->nh 0
PARAM_VALUE 0 rt->nh->nh_info->fib6_nh.nh_common.nhc_dev->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 0 rt->nh->nh_info->fib6_nh.nh_common.nhc_dev->refcnt_tracker.list.next->prev 4096-ptr_max
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->nl_net 4096-ptr_max
PARAM_VALUE 2 del_reason 0
BUF_SIZE 1 info 24
CAPPED_DATA 0 rt 1
DATA_SOURCE 0 rt $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &table->tb6_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock