Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\direct-io.c Create Date:2022-07-28 20:15:11
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:In the AIO read case we speculatively dirty the pages before starting IO.* During IO completion, any of these pages which happen to have been written* back will be redirtied by bio_check_pages_dirty().

Proto:static inline void dio_bio_submit(struct dio *dio, struct dio_submit *sdio)

Type:void

Parameter:

TypeParameterName
struct dio *dio
struct dio_submit *sdio
444  bio = under assembly
447  bi_private = dio
449  spin_lock_irqsave( & protects BIO fields below , flags)
450  direct_io_worker() and bios ++
451  spin_unlock_irqrestore( & protects BIO fields below , flags)
453  If s IO async ? && op == REQ_OP_READ && pages should be dirtied Then bio_set_pages_dirty(bio)
456  bio_disk = bi_disk
458  If IO submition function Then
459  IO submition function (bio, inode, current first logical block in bio )
460  bio_cookie = BLK_QC_T_NONE
461  Else bio_cookie = submit_bio(bio)
464  under assembly = NULL
465  prev block is at a boundary = 0
466  current first logical block in bio = 0
Caller
NameDescribe
dio_send_cur_pagePut cur_page under IO
submit_page_sectionAn autonomous function to put a chunk of a page under deferred IO.* The caller doesn't actually know (or care) whether this piece of page is in* a BIO, or is under IO or whatever. We just take care of all possible * situations here
do_blockdev_direct_IOThis is a library function for use by filesystem drivers