Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c amdgpu_dmabuf_is_xgmi_accessible() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_VALUE 0 adev 4096-ptr_max
PARAM_VALUE 1 bo_adev 4096-ptr_max
CAPPED_DATA 0 adev 1
DATA_SOURCE 0 adev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 adev->gmc.real_vram_size

drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c gmc_v9_0_get_coherence_flags() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_VALUE 0 adev 4096-ptr_max
PARAM_VALUE 1 bo_adev 4096-ptr_max
CAPPED_DATA 0 adev 1
DATA_SOURCE 0 adev $0
DATA_SOURCE 1 bo_adev r amdgpu_ttm_adev
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 1 bo_adev != $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 adev->gmc.real_vram_size
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &process_info->lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_nodes_in_same_hive() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 1 bo_adev != $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &prange->migrate_mutex
LOCK2 &svms->lock
HALF_LOCKED2 &prange->lock
HALF_LOCKED2 &process_info->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct svm_range)->migrate_mutex
TYPE_LOCK (struct svm_range_list)->lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_map_to_gpus() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_VALUE 1 bo_adev 1-u64max
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 1 bo_adev != $0
PARAM_COMPARE 1 bo_adev != $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &prange->lock
LOCK2 &prange->migrate_mutex
LOCK2 &svms->lock
HALF_LOCKED2 &process_info->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct svm_range)->lock
TYPE_LOCK (struct svm_range)->migrate_mutex
TYPE_LOCK (struct svm_range_list)->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c amdgpu_gem_op_ioctl() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_VALUE 0 adev 4096-ptr_max
PARAM_VALUE 1 bo_adev 4096-ptr_max
HALF_LOCKED2 gobj->resv

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c kfd_mem_attach() -> amdgpu_xgmi_same_hive()

Type Parameter Key Value
PARAM_VALUE 0 adev 4096-ptr_max
PARAM_VALUE 1 bo_adev 4096-ptr_max
DATA_SOURCE 0 adev $0
DATA_SOURCE 1 bo_adev r amdgpu_ttm_adev
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 0 adev != $1
PARAM_COMPARE 1 bo_adev != $0
LOCK2 &mem->lock
LOCK2 &mem->process_info->lock
LOCK2 &p->mutex
HALF_LOCKED2 &gobj->dev->object_name_lock
TYPE_LOCK (struct amdkfd_process_info)->lock
TYPE_LOCK (struct kfd_process)->mutex
TYPE_LOCK (struct kgd_mem)->lock