函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\page_alloc.c Create Date:2022-07-27 16:35:00
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Free a list of 0-order pages

函数原型:void free_unref_page_list(struct list_head *list)

返回类型:void

参数:

类型参数名称
struct list_head *list
3075  batch_count等于0
3079  pfn等于page_to_pfn(page)
3080  如果非free_unref_page_prepare(page, pfn)则删除链表项
3082  set_page_private(page, pfn)
3085  local_irq_save(flags)
3087  pfn等于page_private(page)
3089  set_page_private(page, 0)
3090  trace_mm_page_free_batched(page)
3091  free_unref_page_commit(page, pfn)
3097  如果batch_count先自加恒等于SWAP_CLUSTER_MAX
3098  local_irq_restore(flags)
3099  batch_count等于0
3100  local_irq_save(flags)
3103  local_irq_restore(flags)
调用者
名称描述
shrink_page_listshrink_page_list() returns the number of reclaimed pages
shrink_inactive_listshrink_inactive_list() is a helper for shrink_node(). It returns the number* of reclaimed pages
shrink_active_list
release_pageslease_pages - batched put_page()*@pages: array of pages to release*@nr: number of pages* Decrement the reference count on all the pages in @pages. If it* fell to zero, remove the page from the LRU and free it.