函数逻辑报告 |
Source Code:block\blk-mq.c |
Create Date:2022-07-27 18:47:31 |
| Last Modify:2020-03-17 23:18:05 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:__blk_mq_update_nr_hw_queues
函数原型:static void __blk_mq_update_nr_hw_queues(struct blk_mq_tag_set *set, int nr_hw_queues)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct blk_mq_tag_set * | set | |
| int | nr_hw_queues |
| 3243 | lockdep_assert_held( & tag_list_lock) |
| 3245 | 如果nr_maps恒等于1且nr_hw_queues大于CPU数量则nr_hw_queues等于CPU数量 |
| 3247 | 如果nr_hw_queues小于1或nr_hw_queues恒等于nr_hw_queues则返回 |
| 3251 | blk_mq_freeze_queue(q) |
| 3258 | 如果非Cache the elevator_type in qe pair list and switch the* io scheduler to 'none'则转到:switch_back |
| 3263 | blk_mq_sysfs_unregister(q) |
| 3266 | 如果blk_mq_realloc_tag_set_tags(set, nr_hw_queues, nr_hw_queues)小于0则转到:reregister |
| 3271 | nr_hw_queues等于nr_hw_queues |
| 3272 | blk_mq_update_queue_map(set) |
| 3273 | fallback : |
| 3275 | blk_mq_realloc_hw_ctxs(set, q) |
| 3276 | 如果nr_hw_queues不等于nr_hw_queues则 |
| 3277 | 打印警告信息("Increasing nr_hw_queues to %d fails, fallback to %d\n", nr_hw_queues, prev_nr_hw_queues) |
| 3280 | blk_mq_map_queues( & map[HCTX_TYPE_DEFAULT]) |
| 3281 | 转到:fallback |
| 3283 | blk_mq_map_swqueue(q) |
| 3286 | reregister : |
| 3288 | blk_mq_sysfs_register(q) |
| 3292 | switch_back : |
| 3294 | blk_mq_elv_switch_back( & head, q) |
| 3297 | blk_mq_unfreeze_queue(q) |
| 名称 | 描述 |
|---|---|
| blk_mq_update_nr_hw_queues |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |