Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/../../../virt/kvm/guest_memfd.c __kvm_gmem_create() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode->i_mapping->a_ops 144
BUF_SIZE 0 inode->i_op 256
CAPPED_DATA 0 inode->i_sb->s_time_max 1
DATA_SOURCE 0 inode r anon_inode_make_secure_inode
BIT_INFO 0 inode->i_flags 0x80000,0xffffffffffffffff
BIT_INFO 0 inode->i_size 0x0,0x7ffffffffffff000
USER_DATA 0 inode->i_size 1-s64max

arch/x86/kvm/../../../virt/kvm/guest_memfd.c __kvm_gmem_create() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode->i_mapping->a_ops 144
BUF_SIZE 0 inode->i_op 256
CAPPED_DATA 0 inode->i_sb->s_time_max 1
DATA_SOURCE 0 inode r anon_inode_make_secure_inode
BIT_INFO 0 inode->i_flags 0x80000,0xffffffffffffffff
BIT_INFO 0 inode->i_size 0x0,0x7ffffffffffff000
USER_DATA 0 inode->i_size 1-s64max

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_destroy_inode() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode->i_sb (-1),80,2752,2816,2880
CAPPED_DATA 0 inode->i_sb 1
DATA_SOURCE 0 inode $0
STR_LEN 0 inode->i_sb (-1),7-8
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_data.host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_free_inode() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_get_folio() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_get_invalidate_filter() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
NO_OVERFLOW_SIMPLE 0 inode->i_size
HALF_LOCKED2 &kvm->slots_lock
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_get_policy() -> GMEM_I()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_end() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_end() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_end() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_start() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_start() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_invalidate_start() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_is_private_mem() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_set_policy() -> GMEM_I()

Type Parameter Key Value
HALF_LOCKED2 &mm->mmap_lock

arch/x86/kvm/../../../virt/kvm/guest_memfd.c kvm_gmem_supports_mmap() -> GMEM_I()

Type Parameter Key Value
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &inode->i_mapping->invalidate_lock