函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:madvise_dontneed_free

函数原型:static long madvise_dontneed_free(struct vm_area_struct *vma, struct vm_area_struct **prev, unsigned long start, unsigned long end, int behavior)

返回类型:long

参数:

类型参数名称
struct vm_area_struct *vma
struct vm_area_struct **prev
unsigned longstart
unsigned longend
intbehavior
759  prev等于vma
760  如果非can_madv_lru_vma(vma)则返回:负EINVAL
763  如果非userfaultfd_remove(vma, start, end)则
764  * prev = NULL
766  lock for reading
767  vma等于Look up the first VMA which satisfies addr < vm_end, NULL if none.
768  如果非vma则返回:负ENOMEM
780  返回:负ENOMEM
782  如果非can_madv_lru_vma(vma)则返回:负EINVAL
799  VM_WARN_ON(start >= end)
802  如果behavior恒等于don't need these pages 则返回:Application no longer needs these pages
804  否则如果behavior恒等于 pages only if memory pressure 则返回:madvise_free_single_vma(vma, start, end)
806  否则返回:负EINVAL
调用者
名称描述
madvise_vma