Function report |
Source Code:fs\direct-io.c |
Create Date:2022-07-28 20:15:10 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Go grab and pin some userspace pages. Typically we'll get 64 at a time.
Proto:static inline int dio_refill_pages(struct dio *dio, struct dio_submit *sdio)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct dio * | dio | |
struct dio_submit * | sdio |
173 | ret = iov_iter_get_pages(iter, page buffer , LONG_MAX, How many user pages to map in one call to get_user_pages(). This determines* the size of a structure in the slab cache, & from) |
176 | If ret < 0 && At block_in_file. changes && op == REQ_OP_WRITE Then |
183 | If from get_user_pages() == 0 Then from get_user_pages() = ret |
186 | page buffer [0] = page |
187 | xt page to process = 0 |
188 | last valid page + 1 = 1 |
189 | from = 0 |
191 | Return 0 |
194 | If ret >= 0 Then |
195 | iov_iter_advance(iter, ret) |
197 | xt page to process = 0 |
198 | last valid page + 1 = ( ret + PAGE_SIZE - 1) / PAGE_SIZE |
200 | Return 0 |
202 | Return ret |
Name | Describe |
---|---|
dio_get_page | Get another userspace page. Returns an ERR_PTR on error. Pages are* buffered inside the dio so that we can call get_user_pages() against a* decent number of pages, less frequently. To provide nicer use of the* L1 cache. |
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 |