Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-ioc.c Create Date:2022-07-28 17:04:27
Last Modify:2020-03-17 23:16:06 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:_lookup_icq - lookup io_cq from ioc*@ioc: the associated io_context*@q: the associated request_queue* Look up io_cq associated with @ioc - @q pair from @ioc. Must be called* with @q->queue_lock held.

Proto:struct io_cq *ioc_lookup_icq(struct io_context *ioc, struct request_queue *q)

Type:struct io_cq

Parameter:

TypeParameterName
struct io_context *ioc
struct request_queue *q
329  lockdep_assert_held( & queue_lock)
337  _read_lock() - mark the beginning of an RCU read-side critical section* When synchronize_rcu() is invoked on one CPU while other CPUs* are within RCU read-side critical sections, then the* synchronize_rcu() is guaranteed to block until after all the other
338  icq = fetch RCU-protected pointer for dereferencing(icq_hint)
339  If icq && >icq_list and icq->q_node by q lock. == q Then Go to out
342  icq = adix_tree_lookup - perform lookup operation on a radix tree*@root: radix tree root*@index: index key* Lookup the item at the position @index in the radix tree @root.* This function can be called under rcu_read_lock, however the caller
343  If icq && >icq_list and icq->q_node by q lock. == q Then cu_assign_pointer() - assign to RCU-protected pointer*@p: pointer to assign to*@v: value to assign (publish)* Assigns the specified value to the specified RCU-protected* pointer, ensuring that any concurrent RCU readers will see* any prior initialization(icq_hint, icq)
345  Else icq = NULL
347  out :
348  _read_unlock() - marks the end of an RCU read-side critical section.* In most situations, rcu_read_unlock() is immune from deadlock.* However, in kernels built with CONFIG_RCU_BOOST, rcu_read_unlock()
349  Return icq
Caller
NameDescribe
ioc_create_icq_create_icq - create and link io_cq*@ioc: io_context of interest*@q: request_queue of interest*@gfp_mask: allocation mask* Make sure io_cq linking @ioc and @q exists
blk_mq_sched_assign_ioc
bfq_bic_lookupq_bic_lookup - search into @ioc a bic associated to @bfqd.*@bfqd: the lookup key.*@ioc: the io_context of the process doing I/O.*@q: the request queue.