Defined in 2 files as a function:

Referenced in 7 files:

Smatch caller information:

mm/mmap.c dup_mmap() -> vm_unacct_memory()

Type Parameter Key Value
DATA_SOURCE 0 pages r tear_down_vmas
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/mmap.c dup_mmap() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
CAPPED_DATA 0 pages 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/mmap.c exit_mmap() -> vm_unacct_memory()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

mm/swapfile.c __do_sys_swapoff() -> vm_unacct_memory()

Type Parameter Key Value
CAPPED_DATA 0 pages 1
CAPABLE 0 21
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 0 pages unit_page
LOCK2 global &swap_lock

mm/swapfile.c __do_sys_swapoff() -> vm_unacct_memory()

Type Parameter Key Value
CAPPED_DATA 0 pages 1
CAPABLE 0 21
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 0 pages unit_page
LOCK2 global &swap_lock

mm/util.c __vm_enough_memory() -> vm_unacct_memory()

Type Parameter Key Value
DATA_SOURCE 0 pages $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 pages (-9007199254740989)-4503599627370495
UNITS 0 pages unit_page
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->anon_vma->root->rwsem
HALF_LOCKED2 global &swap_lock

mm/mprotect.c mprotect_fixup() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
NOCHECK_CALL
USER_DATA 0 pages 1-4503599627370495[c]
UNITS 0 pages unit_page
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock

mm/mprotect.c mprotect_fixup() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
CAPPED_DATA 0 pages 1
NOCHECK_CALL
USER_DATA 0 pages 2-4503599627370495[c]
UNITS 0 pages unit_page
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock

mm/shmem.c shmem_reacct_size() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages (-4503599627370495)-4503599627370495
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 pages (-2251799813685248)-4503599627370494
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock

mm/shmem.c shmem_unacct_blocks() -> vm_unacct_memory()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/shmem.c shmem_unacct_size() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages (-2251799813685248)-2251799813685247
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 pages (-2251799813685248)-2251799813685247[c]

mm/mremap.c vrm_uncharge() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
NOCHECK_CALL
USER_DATA 0 pages 1-4503599627370495[c]
UNITS 0 pages unit_page
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/vma.c __mmap_region() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages s64min-(-1),1-s64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 &mm->mmap_lock

mm/vma.c do_brk_flags() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
NOCHECK_CALL
USER_DATA 0 pages 1-4503599627370495[c]
UNITS 0 pages unit_page
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/vma.c insert_vm_struct() -> vm_unacct_memory()

Type Parameter Key Value
PARAM_VALUE 0 pages 0-4503599627370495
CAPPED_DATA 0 pages 1
DATA_SOURCE 0 pages r vma_pages
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 pages 1-4503599627370495[c]
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/vma.c vms_complete_munmap_vmas() -> vm_unacct_memory()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 pages 1-9007199254740990[c][u]