Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:memory_failure_queue - Schedule handling memory failure of a page.*@pfn: Page Number of the corrupted page*@flags: Flags for memory failure handling* This function is called by the low level hardware error handler

Proto:void memory_failure_queue(unsigned long pfn, int flags)

Type:void

Parameter:

TypeParameterName
unsigned longpfn
intflags
1447  struct memory_failure_entry entry = {pfn = pfn, flags = flags, }
1452  mf_cpu = Must be an lvalue. Since @var must be a simple identifier,* we force a syntax error here if it isn't.(memory_failure_cpu)
1453  spin_lock_irqsave( & lock, proc_flags)
1454  If kfifo_put - put data into the fifo*@fifo: address of the fifo to be used*@val: the data to be added* This macro copies the given value into the fifo( & fifo, entry) Then schedule_work_on - put work task on a specific cpu*@cpu: cpu to put the work task on*@work: job to be done* This puts a job on a specific cpu
1456  Else pr_err("Memory failure: buffer overflow when queuing memory failure at %#lx\n", pfn)
1459  spin_unlock_irqrestore( & lock, proc_flags)
1460  The weird & is necessary because sparse considers (void)(var) to be* a direct dereference of percpu variable (var).(memory_failure_cpu)