函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-core.c Create Date:2022-07-27 18:35:22
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:direct_make_request - hand a buffer directly to its device driver for I/O*@bio: The bio describing the location in memory and on the device.* This function behaves like generic_make_request(), but does not protect* against recursion

函数原型:blk_qc_t direct_make_request(struct bio *bio)

返回类型:blk_qc_t

参数:

类型参数名称
struct bio *bio
1115  q等于queue
1116  nowait等于 bottom bits req flags, * top bits REQ_OP. Use * accessors.按位与REQ_NOWAIT
1119  如果非generic_make_request_checks(bio)则返回:BLK_QC_T_NONE
1122  如果此条件成立可能性小(为编译器优化)(lk_queue_enter() - try to increase q->q_usage_counter*@q: request queue pointer*@flags: BLK_MQ_REQ_NOWAIT and/or BLK_MQ_REQ_PREEMPT)则
1123  如果nowait且非blk_queue_dying(q)则bi_status等于BLK_STS_AGAIN
1125  否则bi_status等于BLK_STS_IOERR
1127  _endio - end I/O on a bio*@bio: bio* Description:* bio_endio() will end I/O on the whole bio. bio_endio() is the preferred* way to end I/O on a bio. No one should call bi_end_io() directly on a
1128  返回:BLK_QC_T_NONE
1131  ret等于make_request_fn(q, bio)
1132  blk_queue_exit(q)
1133  返回:ret