函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\bio.c Create Date:2022-07-27 18:30:34
Last Modify:2020-03-17 23:13:58 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:bio_release_pages

函数原型:void bio_release_pages(struct bio *bio, bool mark_dirty)

返回类型:void

参数:

类型参数名称
struct bio *bio
boolmark_dirty
880  如果bio_flagged(bio, BIO_NO_PAGE_REF)则返回
884  如果mark_dirty且非PageCompound(bv_page)则set_page_dirty() is racy if the caller has no reference against* CPU could truncate the page off the mapping and then free the mapping.* Usually, the page _is_ locked, or the caller is a user-space process which
886  put_page(bv_page)
调用者
名称描述
bio_map_user_iov_map_user_iov - map user iovec into bio*@q: the struct request_queue for the bio*@iter: iovec iterator*@gfp_mask: memory allocation flags* Map the user space address into a bio suitable for io to a block* device. Returns an error pointer in case of error.
bio_unmap_user_unmap_user - unmap a bio*@bio: the bio being unmapped* Unmap a bio previously mapped by bio_map_user_iov(). Must be called from* process context.* bio_unmap_user() may sleep.
bio_dirty_fn_check_pages_dirty() will check that all the BIO's pages are still dirty.* If they are, then fine. If, however, some pages are clean then they must* have been written out during the direct-IO read. So we take another ref on
bio_check_pages_dirty
blkdev_bio_end_io
dio_bio_complete
iomap_dio_bio_end_io