Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\z3fold.c Create Date:2022-07-28 16:29:18
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:__release_z3fold_page

Proto:static void __release_z3fold_page(struct z3fold_header *zhdr, bool locked)

Type:void

Parameter:

TypeParameterName
struct z3fold_header *zhdr
boollocked
524  page = virt_to_page(kaddr) returns a valid pointer if and only if* virt_addr_valid(kaddr) returns true.(zhdr)
525  pool = zhdr_to_pool(zhdr)
526  bool is_free = true
529  WARN_ON(!list_empty - tests whether a list is empty*@head: the list to test.)
530  Atomically set a bit in memory
531  lear_bit - Clears a bit in memory*@nr: Bit to clear*@addr: Address to start counting from* This is a relaxed atomic operation (no implied memory barriers).
532  spin_lock( & lock)
533  If Not list_empty - tests whether a list is empty*@head: the list to test. Then list_del_init - deletes entry from list and reinitialize it.*@entry: the element to delete from the list.
535  spin_unlock( & lock)
538  read_lock( & lock)
539  When i <= BUDDY_MASK cycle
541  is_free = false
542  Break
545  If Not is_free Then Atomically set a bit in memory
547  read_unlock( & lock)
549  If is_free Then kmem_cache_free(c_handle, slots)
552  If locked Then Unlock a z3fold page
555  spin_lock( & stale_lock)
556  list_add - add a new entry*@new: new entry to be added*@head: list head to add it after* Insert a new entry after the specified head.* This is good for implementing stacks.
557  queue_work - queue work on a workqueue*@wq: workqueue to use*@work: work to queue* Returns %false if @work was already on a queue, %true otherwise.* We queue the work to the CPU on which it was submitted, but if the CPU dies
558  spin_unlock( & stale_lock)
Caller
NameDescribe
release_z3fold_page
release_z3fold_page_locked
release_z3fold_page_locked_list