函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\mlock.c Create Date:2022-07-27 16:13:06
Last Modify:2022-05-23 14:12:58 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Munlock a batch of pages from the same zone* The work is split to two main phases

函数原型:static void __munlock_pagevec(struct pagevec *pvec, struct zone *zone)

返回类型:void

参数:

类型参数名称
struct pagevec *pvec
struct zone *zone
293  nr等于pagevec_count(pvec)
294  delta_munlocked等于负nr
296  pgrescued等于0
298  pagevec_init( & pvec_putback)
301  spin_lock_irq( & Write-intensive fields used by page reclaim )
302 i小于nr循环
303  page等于pages[i]
305  如果TestClearPageMlocked(page)则
314  否则
315  delta_munlocked自加
324  Add a page to a pagevec. Returns the number of slots still available.
325  pages[i] = NULL
327  We do not maintain differentials in a single processor configuration.* The functions directly modify the zone and global counters.
328  spin_unlock_irq( & Write-intensive fields used by page reclaim )
331  pagevec_release( & pvec_putback)
334 i小于nr循环
335  page等于pages[i]
337  如果page
357  如果pagevec_count( & pvec_putback)则Putback multiple evictable pages to the LRU* Batched putback of evictable pages that bypasses the per-cpu pvec. Some of* the pages might have meanwhile become unevictable but that is OK.
调用者
名称描述
munlock_vma_pages_rangemunlock_vma_pages_range() - munlock all pages in the vma range.'*@vma - vma containing range to be munlock()ed.*@start - start address in @vma of the range*@end - end of range in @vma.* For mremap(), munmap() and exit().* Called with @vma VM_LOCKED.