Function report |
Source Code:mm\page_owner.c |
Create Date:2022-07-28 16:23:58 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:read_page_owner
Proto:static ssize_t read_page_owner(struct file *file, char __user *buf, size_t count, loff_t *ppos)
Type:ssize_t
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct file * | file | |
| char __user * | buf | |
| size_t | count | |
| loff_t * | ppos |
| 465 | If Not static_branch_unlikely( & page_owner_inited) Then Return -EINVAL |
| 468 | page = NULL |
| 469 | pfn = min_low_pfn + ppos |
| 472 | When Not pfn_valid(pfn) && (pfn & MAX_ORDER_NR_PAGES - 1 ) != 0 cycle |
| 473 | pfn++ |
| 483 | If (pfn & MAX_ORDER_NR_PAGES - 1 ) == 0 && Not pfn_valid(pfn) Then |
| 484 | pfn += MAX_ORDER_NR_PAGES - 1 |
| 485 | Continue |
| 489 | If Not pfn_valid_within(pfn) Then Continue |
| 492 | page = pfn_to_page(pfn) |
| 494 | freepage_order = Like page_order(), but for callers who cannot afford to hold the zone lock(page) |
| 496 | If freepage_order < Free memory management - zoned buddy allocator. Then pfn += (1UL << freepage_order) - 1 |
| 498 | Continue |
| 501 | page_ext = lookup_page_ext(page) |
| 502 | If Value for the false possibility is greater at compile time(!page_ext) Then Continue |
| 509 | If Not st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Continue |
| 516 | If Not st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Continue |
| 519 | page_owner = get_page_owner(page_ext) |
| 525 | If Not IS_ALIGNED(pfn, 1 << order) Then Continue |
| 533 | If Not handle Then Continue |
| 537 | ppos = pfn - min_low_pfn + 1 |
| 539 | Return print_page_owner(buf, count, pfn, page, page_owner, handle) |
| 543 | Return 0 |
| 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 |