Function report |
Source Code:block\blk-mq.c |
Create Date:2022-07-28 17:10:47 |
Last Modify:2020-03-17 23:18:05 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:blk_mq_alloc_rqs
Proto:int blk_mq_alloc_rqs(struct blk_mq_tag_set *set, struct blk_mq_tags *tags, unsigned int hctx_idx, unsigned int depth)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct blk_mq_tag_set * | set | |
struct blk_mq_tags * | tags | |
unsigned int | hctx_idx | |
unsigned int | depth |
2115 | max_order = 4 |
2119 | node = CPU -> queue mappings |
2120 | If node == NUMA_NO_NODE Then node = numa_node |
2134 | this_order = max_order |
2139 | When this_order && left < order_to_size(this_order - 1) cycle |
2140 | this_order-- |
2142 | Do |
2143 | page = Allocate pages, preferring the node given as nid. When nid == NUMA_NO_NODE,* prefer the current CPU's closest node. Otherwise node must be valid and* online. |
2146 | If page Then Break |
2148 | If Not this_order -- Then Break |
2150 | If order_to_size(this_order) < rq_size Then Break |
2152 | When 1 cycle |
2157 | *@private: Mapping-private opaque data. * Usually used for buffer_heads if PagePrivate. * Used for swp_entry_t if PageSwapCache. * Indicates order in the buddy system if PageBuddy. = this_order |
2160 | p = page_address(page) |
2166 | entries_per_page = order_to_size(this_order) / rq_size |
2182 | Return 0 |
2184 | fail : |
2185 | blk_mq_free_rqs(set, tags, hctx_idx) |
2186 | Return -ENOMEM |
Name | Describe |
---|---|
__blk_mq_alloc_rq_map | |
blk_mq_tag_update_depth | |
blk_mq_sched_alloc_tags |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |