Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 18 files:

Smatch caller information:

drivers/scsi/scsi_error.c scsi_eh_scmd_add() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

net/ipv4/nexthop.c nexthop_put() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/geneve.c geneve_changelink() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
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

lib/percpu-refcount.c __percpu_ref_switch_to_atomic() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &percpu_ref_switch_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

net/ipv4/fib_semantics.c free_fib_info() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 rcu_read

net/ipv4/fib_semantics.c nexthop_put() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

net/core/dst.c dst_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
NOCHECK_CALL

net/tipc/udp_media.c cleanup_bearer() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ub->rcast_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct udp_bearer)->rcast_lock

drivers/net/netdevsim/fib.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &data->fib_lock
HALF_LOCKED2 &pool->lock

kernel/bpf/memalloc.c check_free_by_rcu() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
NOCHECK_CALL

net/ipv6/addrconf.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mlxsw_sp->router->lock
HALF_LOCKED2 &pool->lock

net/ipv6/anycast.c aca_put() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

net/ipv6/anycast.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &idev->lock
HALF_LOCKED2 bh

kernel/rcu/sync.c rcu_sync_call() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &rsp->gp_wait.lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct wait_queue_head)->lock

io_uring/eventfd.c __io_eventfd_signal() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read

net/ipv6/ip6_fib.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &table->tb6_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv6/ip6_fib.c nexthop_put() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

net/ipv6/route.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/vxlan/vxlan_core.c nexthop_put() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &vxlan->hash_lock
HALF_LOCKED2 bh

net/ipv6/ndisc.c fib6_info_release() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/workqueue.c queue_rcu_work() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &krcp->lock
HALF_LOCKED2 &q->instances_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &acpi_ioremap_lock
HALF_LOCKED2 global &pernet_ops_rwsem
HALF_LOCKED2 rcu_read

net/ipv4/devinet.c inet_free_ifa() -> call_rcu_hurry()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

kernel/rcu/rcuscale.c rcu_scale_writer() -> (struct rcu_scale_ops)->async()

Type Parameter Key Value
PARAM_VALUE 0 head 0,4096-ptr_max
NOCHECK_CALL