Function report |
Source Code:block\blk-mq.c |
Create Date:2022-07-28 17:08:32 |
| 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_rq_ctx_init
Proto:static struct request *blk_mq_rq_ctx_init(struct blk_mq_alloc_data *data, unsigned int tag, unsigned int op, u64 alloc_time_ns)
Type:struct request
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct blk_mq_alloc_data * | data | |
| unsigned int | tag | |
| unsigned int | op | |
| u64 | alloc_time_ns |
| 275 | tags = blk_mq_tags_from_data(data) |
| 276 | rq = static_rqs[tag] |
| 277 | rq_flags = 0 |
| 279 | If flags & BLK_MQ_REQ_INTERNAL Then |
| 280 | tag = -1 |
| 281 | internal_tag = tag |
| 282 | Else |
| 284 | rq_flags = rack inflight for MQ |
| 288 | internal_tag = -1 |
| 293 | q = input parameter |
| 297 | op and common flags = op |
| 298 | If flags & BLK_MQ_REQ_PREEMPT Then rq_flags |= set for "ide_preempt" requests and also for requests for which the SCSI"quiesce" state must be ignored. |
| 300 | If blk_queue_io_stat( input parameter ) Then rq_flags |= account into disk and partition IO statistics |
| 303 | INIT_HLIST_NODE( & merge hash ) |
| 304 | RB_CLEAR_NODE( & sort/lookup ) |
| 305 | rq_disk = NULL |
| 306 | part = NULL |
| 310 | If Only need start/end time stamping if we have iostat or* blk stats enabled, or using an IO scheduler. Then Time that this request was allocated for this IO. = ktime_get_ns() |
| 312 | Else Time that this request was allocated for this IO. = 0 |
| 316 | * Number of scatter-gather DMA addr+len pairs after * physical address coalescing is performed. = 0 |
| 318 | nr_integrity_segments = 0 |
| 321 | length of alignment and padding = 0 |
| 322 | WRITE_ONCE(deadline, 0) |
| 324 | timeout = 0 |
| 326 | * completion callback. = NULL |
| 327 | end_io_data = NULL |
| 329 | cremented at dispatch time [Reads are always treated as synchronous, as are requests with the FUA or* PREFLUSH flag. Other operations may be marked as synchronous using the* REQ_SYNC flag.]++ |
| 331 | Return rq |
| Name | Describe |
|---|---|
| blk_mq_get_request |
| 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 |