函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:zone_watermark_fast

函数原型:static inline bool zone_watermark_fast(struct zone *z, unsigned int order, unsigned long mark, int classzone_idx, unsigned int alloc_flags)

返回类型:bool

参数:

类型参数名称
struct zone *z
unsigned intorder
unsigned longmark
intclasszone_idx
unsigned intalloc_flags
3479  free_pages等于zone_page_state(z, First 128 byte cacheline (assuming 64 bit words) )
3480  cma_pages等于0
3484  如果非alloc_flags按位与allow allocations from CMA areas 的值则cma_pages等于zone_page_state(z, NR_FREE_CMA_PAGES)
3495  如果非orderfree_pagescma_pages大于mark关键性内存分配[classzone_idx]则返回:true
3498  返回:Return true if free base pages are above 'mark'. For high-order checks it* will return true of the order-0 watermark is reached and there is at least* one free page of a suitable size. Checking now avoids taking the zone lock
调用者
名称描述
get_page_from_freelistget_page_from_freelist goes through the zonelist trying to allocate* a page.