Function report |
Source Code:fs\buffer.c |
Create Date:2022-07-28 20:14:10 |
Last Modify:2020-03-18 10:38:29 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:lean_bdev_aliases: clean a range of buffers in block device*@bdev: Block device to clean buffers in*@block: Start of a range of blocks to clean*@len: Number of blocks to clean* We are taking a range of blocks for data and we don't want writeback of any*
Proto:void clean_bdev_aliases(struct block_device *bdev, sector_t block, sector_t len)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct block_device * | bdev | |
sector_t | block | |
sector_t | len |
1606 | bd_mapping = i_mapping |
1608 | index = block >> PAGE_SHIFT determines the page size - i_blkbits |
1614 | end = block + len - 1 >> PAGE_SHIFT determines the page size - i_blkbits |
1615 | pagevec_init( & pvec) |
1617 | count = pagevec_count( & pvec) |
1621 | If Not page_has_buffers(page) Then Continue |
1630 | If Not page_has_buffers(page) Then Go to unlock_page |
1634 | Do |
1635 | If Not buffer_mapped(bh) || start block number < block Then Go to next |
1637 | If start block number >= block + len Then Break |
1639 | clear_buffer_dirty(bh) |
1640 | wait_on_buffer(bh) |
1641 | clear_buffer_req(bh) |
1642 | next : |
1645 | unlock_page : |
1648 | pagevec_release( & pvec) |
1649 | cond_resched() |
Name | Describe |
---|---|
do_direct_IO | Walk the user pages, and the file, mapping blocks to disk and generating* a sequence of (page,offset,len,block) mappings. These mappings are injected* into submit_page_section(), which takes care of the next stage of submission |
clean_bdev_bh_alias |
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 |