Function report |
Source Code:mm\z3fold.c |
Create Date:2022-07-28 16:29:41 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Has to be called with lock held
Proto:static int z3fold_compact_page(struct z3fold_header *zhdr)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct z3fold_header * | zhdr |
| 780 | page = virt_to_page(kaddr) returns a valid pointer if and only if* virt_addr_valid(kaddr) returns true.(zhdr) |
| 782 | If st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from Then Return 0 |
| 785 | If Value for the false possibility is greater at compile time(PageIsolated(page)) Then Return 0 |
| 788 | If middle_chunks == 0 Then Return 0 |
| 791 | If first_chunks == 0 && last_chunks == 0 Then |
| 793 | mchunk_memmove(zhdr, ZHDR_CHUNKS) |
| 794 | first_chunks = middle_chunks |
| 795 | middle_chunks = 0 |
| 796 | start_middle = 0 |
| 797 | first_num++ |
| 798 | Return 1 |
| 805 | If first_chunks != 0 && last_chunks == 0 && start_middle - first_chunks + ZHDR_CHUNKS >= BIG_CHUNK_GAP Then |
| 808 | mchunk_memmove(zhdr, first_chunks + ZHDR_CHUNKS) |
| 809 | start_middle = first_chunks + ZHDR_CHUNKS |
| 810 | Return 1 |
| 811 | Else if last_chunks != 0 && first_chunks == 0 && TOTAL_CHUNKS - last_chunks + start_middle + middle_chunks >= BIG_CHUNK_GAP Then |
| 815 | new_start = TOTAL_CHUNKS - last_chunks - middle_chunks |
| 817 | mchunk_memmove(zhdr, new_start) |
| 818 | start_middle = new_start |
| 819 | Return 1 |
| 822 | Return 0 |
| Name | Describe |
|---|---|
| do_compact_page |
| 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 |