函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:check_new_page_bad

函数原型:static void check_new_page_bad(struct page *page)

返回类型:void

参数:

类型参数名称
struct page *page
2044  const char * bad_reason = NULL
2045  bad_flags等于0
2047  如果此条件成立可能性小(为编译器优化)(atomic_read( & * If the page can be mapped to userspace, encodes the number * of times this page is referenced by a page table.) != - 1)则bad_reason等于"nonzero mapcount"
2049  如果此条件成立可能性小(为编译器优化)( See page-flags.h for PAGE_MAPPING_FLAGS != NULL)则bad_reason等于"non-NULL mapping"
2051  如果此条件成立可能性小(为编译器优化)(page_ref_count(page) != 0)则bad_reason等于"nonzero _refcount"
2053  如果此条件成立可能性小(为编译器优化)(体系结构无关页的属性 & __PG_HWPOISON)则
2054  bad_reason等于"HWPoisoned (hardware-corrupted)"
2055  bad_flags等于__PG_HWPOISON
2057  The atomic page->_mapcount, starts from -1: so that transitions* both from it and to it can be tracked, using atomic_inc_and_test* and atomic_add_negative(-1).
2058  返回
2060  如果此条件成立可能性小(为编译器优化)(体系结构无关页的属性 & Flags checked when a page is prepped for return by the page allocator)则
2061  bad_reason等于"PAGE_FLAGS_CHECK_AT_PREP flag set"
2062  bad_flags等于Flags checked when a page is prepped for return by the page allocator
2065  如果此条件成立可能性小(为编译器优化)(mem_cgroup)则bad_reason等于"page still charged to cgroup"
2068  bad_page(page, bad_reason, bad_flags)
调用者
名称描述
check_new_pageThis page is about to be returned from the page allocator