函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Kill the processes that have been collected earlier.* Only do anything when DOIT is set, otherwise just free the list* (this is used for clean pages which do not need killing)* Also when FAIL is set do a force kill because something went* wrong earlier.

函数原型:static void kill_procs(struct list_head *to_kill, int forcekill, bool fail, unsigned long pfn, int flags)

返回类型:void

参数:

类型参数名称
struct list_head *to_kill
intforcekill
boolfail
unsigned longpfn
intflags
362  如果forcekill
368  如果failaddr恒等于负EFAULT
369  打印错误信息("Memory failure: %#lx: forcibly killing %s:%d because of failure to unmap corrupted page\n", pfn, comm, 进程ID)
381  否则如果Send all the processes who have the page mapped a signal.* ``action optional'' if they are not immediately affected by the error* ``action required'' if error happened in current execution context小于0则打印错误信息("Memory failure: %#lx: Cannot send advisory machine check signal to %s:%d\n", pfn, 是否使用FPU, 进程ID)
385  put_task_struct(tsk)
386  释放内存
调用者
名称描述
hwpoison_user_mappingsDo all that is necessary to remove user space mappings. Unmap* the pages and send SIGBUS to the processes if the data was dirty.
memory_failure_dev_pagemap