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 |