| Function report | 
| Source Code: fs\buffer.c | Create Date:2022-07-28 20:14:11 | 
| Last Modify:2020-03-18 10:38:29 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Generic "read page" function for block devices that have the normal* get_block functionality
Proto:int block_read_full_page(struct page *page, get_block_t *get_block)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct page * | page | |
| get_block_t * | get_block | 
| 2263 | fully_mapped = 1 | 
| 2265 | head = create_page_buffers(page, inode, 0) | 
| 2266 | blocksize = size of mapping | 
| 2272 | nr = 0 | 
| 2273 | i = 0 | 
| 2275 | Do | 
| 2279 | If Not buffer_mapped(bh) Then | 
| 2280 | err = 0 | 
| 2282 | fully_mapped = 0 | 
| 2284 | WARN_ON( size of mapping != blocksize) | 
| 2286 | If err Then SetPageError(page) | 
| 2289 | If Not buffer_mapped(bh) Then | 
| 2305 | If fully_mapped Then SetPageMappedToDisk(page) | 
| 2308 | If Not nr Then | 
| 2313 | If Not PageError(page) Then SetPageUptodate(page) | 
| 2316 | Return 0 | 
| 2322 | lock_buffer(bh) | 
| 2335 | Else submit_bh(REQ_OP_READ, 0, bh) | 
| 2338 | Return 0 | 
| Name | Describe | 
|---|---|
| blkdev_readpage | |
| do_mpage_readpage | This is the worker routine which does all the work of mapping the disk* blocks and constructs largest possible bios, submits them for IO if the* blocks are not contiguous on the disk | 
| 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 |