函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-ioc.c Create Date:2022-07-27 18:39:43
Last Modify:2020-03-17 23:16:06 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:_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.

函数原型:struct io_cq *ioc_lookup_icq(struct io_context *ioc, struct request_queue *q)

返回类型:struct io_cq

参数:

类型参数名称
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等于cu_dereference() - fetch RCU-protected pointer for dereferencing*@p: The pointer to read, prior to dereferencing* This is a simple wrapper around rcu_dereference_check().(icq_hint)
339  如果icq>icq_list and icq->q_node by q lock.恒等于q则转到: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  如果icq>icq_list and icq->q_node by q lock.恒等于qcu_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  否则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  返回:icq
调用者
名称描述
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.