Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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 activityDownload SCCTChinese

Name:Has to be called with lock held

Proto:static int z3fold_compact_page(struct z3fold_header *zhdr)

Type:int

Parameter:

TypeParameterName
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
Caller
NameDescribe
do_compact_page