Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

lib/test_hmm.c dmirror_range_fault() -> dmirror_do_fault()

Type Parameter Key Value
PARAM_VALUE 0 dmirror 4096-ptr_max
PARAM_VALUE 0 dmirror->mutex.dep_map->name 0-255
PARAM_VALUE 0 dmirror->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dmirror->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dmirror->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dmirror->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dmirror->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dmirror->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dmirror->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dmirror->notifier.mm 4096-ptr_max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->mm_users.counter 0-s32max
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 range 3641042538669928448
PARAM_VALUE 1 range->default_flags 9223372036854775808,13835058055282163712
PARAM_VALUE 1 range->end 1-18446744073709551614
PARAM_VALUE 1 range->hmm_pfns 7499753129602740224
PARAM_VALUE 1 range->notifier 4096-ptr_max
PARAM_VALUE 1 range->notifier->mm 4096-ptr_max
PARAM_VALUE 1 range->notifier->mm->notifier_subscriptions 4096-ptr_max
PARAM_VALUE 1 range->notifier->mm->notifier_subscriptions->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 range->start 0-18446744073709551613
BUF_SIZE 0 dmirror s32min-(-2),1-s32max
BUF_SIZE 0 dmirror s32min-(-2),1-s32max
CAPPED_DATA 0 &dmirror->mutex 1
CAPPED_DATA 1 range->end 1
CAPPED_DATA 1 range->notifier->invalidate_seq 1
CAPPED_DATA 1 range->notifier_seq 1
CAPPED_DATA 1 range->start 1
DATA_SOURCE 0 dmirror $0
DATA_SOURCE 1 range $1
PARAM_COMPARE 1 range->end > $1->start
PARAM_COMPARE 1 range->notifier->invalidate_seq == $1->notifier_seq
NOSPEC 1 range->end
NOSPEC 1 range->start
USER_DATA 1 range->end 1-s32max[c]
USER_DATA 1 range->start 0-18446744073709551613[c]
LOCK2 0 &dmirror->mutex
TYPE_LOCK (struct dmirror)->mutex

lib/test_hmm.c dmirror_range_fault_unlocked() -> dmirror_do_fault()

Type Parameter Key Value
PARAM_VALUE 0 dmirror 4096-ptr_max
PARAM_VALUE 0 dmirror->mutex.dep_map->name 0-255
PARAM_VALUE 0 dmirror->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dmirror->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dmirror->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dmirror->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dmirror->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dmirror->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dmirror->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dmirror->notifier.mm 4096-ptr_max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->exe_file->f_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 dmirror->notifier.mm->mm_users.counter 0-s32max
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 dmirror->notifier.mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 range 6446020192845598720
PARAM_VALUE 1 range->default_flags 9223372036854775808
PARAM_VALUE 1 range->end 1-18446744073709551614
PARAM_VALUE 1 range->hmm_pfns 789630165410365440
PARAM_VALUE 1 range->notifier 4096-ptr_max
PARAM_VALUE 1 range->notifier->mm 4096-ptr_max
PARAM_VALUE 1 range->notifier->mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 1 range->notifier->mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 range->notifier->mm->mmap_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 1 range->notifier->mm->mmap_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 1 range->notifier->mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 range->notifier->mm->notifier_subscriptions->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 range->start 0-18446744073709551613
BUF_SIZE 0 dmirror s32min-(-2),1-s32max
BUF_SIZE 0 dmirror s32min-(-2),1-s32max
CAPPED_DATA 0 &dmirror->mutex 1
CAPPED_DATA 1 range->end 1
CAPPED_DATA 1 range->notifier->invalidate_seq 1
CAPPED_DATA 1 range->notifier_seq 1
CAPPED_DATA 1 range->start 1
DATA_SOURCE 0 dmirror $0
DATA_SOURCE 1 range $1
PARAM_COMPARE 1 range->end > $1->start
PARAM_COMPARE 1 range->notifier->invalidate_seq == $1->notifier_seq
NOSPEC 1 range->end
NOSPEC 1 range->start
USER_DATA 1 range->end 1-s32max[c]
USER_DATA 1 range->start 0-18446744073709551613[c]
LOCK2 0 &dmirror->mutex
TYPE_LOCK (struct dmirror)->mutex