Function report |
Source Code:mm\page_owner.c |
Create Date:2022-07-28 16:24:03 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:init_pages_in_zone
Proto:static void init_pages_in_zone(pg_data_t *pgdat, struct zone *zone)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| pg_data_t * | pgdat | |
| struct zone * | zone |
| 549 | end_pfn = zone_end_pfn(zone) |
| 550 | count = 0 |
| 561 | pfn = @a is a power of 2 value (pfn + 1, MAX_ORDER_NR_PAGES) |
| 562 | Continue |
| 565 | block_end_pfn = @a is a power of 2 value (pfn + 1, pageblock_nr_pages) |
| 566 | block_end_pfn = min - return minimum of two values of the same or compatible types*@x: first value*@y: second value(block_end_pfn, end_pfn) |
| 568 | When pfn < block_end_pfn cycle |
| 572 | If Not pfn_valid_within(pfn) Then Continue |
| 575 | page = pfn_to_page(pfn) |
| 590 | If order > 0 && order < Free memory management - zoned buddy allocator. Then pfn += (1UL << order) - 1 |
| 592 | Continue |
| 595 | If PageReserved(page) Then Continue |
| 598 | page_ext = lookup_page_ext(page) |
| 599 | If Value for the false possibility is greater at compile time(!page_ext) Then Continue |
| 603 | If st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Continue |
| 607 | __set_page_owner_handle(page, page_ext, early_handle, 0, 0) |
| 609 | count++ |
| 611 | cond_resched() |
| 614 | pr_info("Node %d, zone %8s: page owner found early allocated %lu pages\n", node_id, name, count) |
| Name | Describe |
|---|---|
| init_zones_in_node |
| 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 |