/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdkfd/ |
H A D | kfd_debug.h | 28 void kfd_dbg_trap_deactivate(struct kfd_process *target, bool unwind, int unwind_count); 29 int kfd_dbg_trap_activate(struct kfd_process *target); 30 int kfd_dbg_ev_query_debug_event(struct kfd_process *process, 42 struct kfd_process *process, struct kfd_node *dev, 46 int kfd_dbg_trap_disable(struct kfd_process *target); 47 int kfd_dbg_trap_enable(struct kfd_process *target, uint32_t fd, 50 int kfd_dbg_trap_set_wave_launch_override(struct kfd_process *target, 56 int kfd_dbg_trap_set_wave_launch_mode(struct kfd_process *target, 65 int kfd_dbg_trap_set_flags(struct kfd_process *target, uint32_t *flags); 66 int kfd_dbg_trap_query_exception_info(struct kfd_process *targe [all...] |
H A D | kfd_svm.h | 71 * @svms: list of svm ranges, structure defined in kfd_process 158 int svm_range_list_init(struct kfd_process *p); 159 void svm_range_list_fini(struct kfd_process *p); 160 int svm_ioctl(struct kfd_process *p, enum kfd_ioctl_svm_op op, uint64_t start, 171 int svm_range_split_by_granularity(struct kfd_process *p, struct mm_struct *mm, 185 int svm_range_get_info(struct kfd_process *p, uint32_t *num_svm_ranges, 187 int kfd_criu_checkpoint_svm(struct kfd_process *p, 190 int kfd_criu_restore_svm(struct kfd_process *p, 194 int kfd_criu_resume_svm(struct kfd_process *p); 208 int svm_range_switch_xnack_reserve_mem(struct kfd_process * [all...] |
H A D | kfd_priv.h | 594 struct kfd_process *process; 634 struct kfd_process *process; 735 struct kfd_process *process; 859 struct kfd_process { struct 861 * kfd_process are stored in an mm_struct*->kfd_process* 862 * hash table (kfd_processes in kfd_process.c) 947 struct kfd_process *debugger_process; 999 typedef int amdkfd_ioctl_t(struct file *filep, struct kfd_process *p, 1014 struct kfd_process *kfd_create_proces [all...] |
H A D | kfd_process.c | 48 * List of struct kfd_process (field kfd_process). 67 static struct kfd_process *find_process(const struct task_struct *thread, 70 static struct kfd_process *create_process(const struct task_struct *thread); 271 struct kfd_process *proc = NULL; in kfd_get_cu_occupancy() 302 struct kfd_process *p = container_of(attr, struct kfd_process, in kfd_procfs_show() 495 struct kfd_process *proc; in kfd_procfs_add_queue() 534 static void kfd_procfs_add_sysfs_stats(struct kfd_process *p) in kfd_procfs_add_sysfs_stats() 581 static void kfd_procfs_add_sysfs_counters(struct kfd_process * [all...] |
H A D | kfd_events.c | 64 static struct kfd_signal_page *allocate_signal_page(struct kfd_process *p) in allocate_signal_page() 94 static int allocate_event_notification_slot(struct kfd_process *p, in allocate_event_notification_slot() 134 static struct kfd_event *lookup_event_by_id(struct kfd_process *p, uint32_t id) in lookup_event_by_id() 141 * @p: Pointer to struct kfd_process 157 struct kfd_process *p, uint32_t id, uint32_t bits) in lookup_signaled_event_by_partial_id() 187 static int create_signal_event(struct file *devkfd, struct kfd_process *p, in create_signal_event() 217 static int create_other_event(struct kfd_process *p, struct kfd_event *ev, const int *restore_id) in create_other_event() 241 int kfd_event_init_process(struct kfd_process *p) in kfd_event_init_process() 261 static void destroy_event(struct kfd_process *p, struct kfd_event *ev) in destroy_event() 280 static void destroy_events(struct kfd_process * [all...] |
H A D | kfd_chardev.c | 69 static inline struct kfd_process_device *kfd_lock_pdd_by_id(struct kfd_process *p, __u32 gpu_id) in kfd_lock_pdd_by_id() 130 struct kfd_process *process; in kfd_open() 166 struct kfd_process *process = filep->private_data; in kfd_release() 174 static int kfd_ioctl_get_version(struct file *filep, struct kfd_process *p, in kfd_ioctl_get_version() 298 static int kfd_ioctl_create_queue(struct file *filep, struct kfd_process *p, in kfd_ioctl_create_queue() 428 static int kfd_ioctl_destroy_queue(struct file *filp, struct kfd_process *p, in kfd_ioctl_destroy_queue() 446 static int kfd_ioctl_update_queue(struct file *filp, struct kfd_process *p, in kfd_ioctl_update_queue() 499 static int kfd_ioctl_set_cu_mask(struct file *filp, struct kfd_process *p, in kfd_ioctl_set_cu_mask() 554 struct kfd_process *p, void *data) in kfd_ioctl_get_queue_wave_state() 572 struct kfd_process * in kfd_ioctl_set_memory_policy() [all...] |
H A D | kfd_svm.c | 77 svm_range_check_vm(struct kfd_process *p, uint64_t start, uint64_t last, 209 struct kfd_process *p; in svm_range_dma_map() 213 p = container_of(prange->svms, struct kfd_process, svms); in svm_range_dma_map() 257 struct kfd_process *p; in svm_range_free_dma_mappings() 260 p = container_of(prange->svms, struct kfd_process, svms); in svm_range_free_dma_mappings() 283 struct kfd_process *p = container_of(prange->svms, struct kfd_process, svms); in svm_range_free() 318 struct kfd_process *p; in svm_range_new() 324 p = container_of(svms, struct kfd_process, svms); in svm_range_new() 525 struct kfd_process * in svm_range_vram_node_new() [all...] |
H A D | kfd_debug.c | 31 int kfd_dbg_ev_query_debug_event(struct kfd_process *process, in kfd_dbg_ev_query_debug_event() 97 struct kfd_process *process; in debug_event_write_work_handler() 103 struct kfd_process, in debug_event_write_work_handler() 113 struct kfd_process *process, struct kfd_node *dev, in kfd_dbg_ev_raise() 204 struct kfd_process *p; in kfd_set_dbg_ev_from_interrupt() 254 int kfd_dbg_send_exception_to_runtime(struct kfd_process *p, in kfd_dbg_send_exception_to_runtime() 321 static int kfd_dbg_set_workaround(struct kfd_process *target, bool enable) in kfd_dbg_set_workaround() 485 static void kfd_dbg_clear_process_address_watch(struct kfd_process *target) in kfd_dbg_clear_process_address_watch() 494 int kfd_dbg_trap_set_flags(struct kfd_process *target, uint32_t *flags) in kfd_dbg_trap_set_flags() 556 void kfd_dbg_trap_deactivate(struct kfd_process *targe [all...] |
H A D | kfd_device_queue_manager.h | 291 int suspend_queues(struct kfd_process *p, 296 int resume_queues(struct kfd_process *p,
|
H A D | kfd_migrate.c | 398 struct kfd_process *p = container_of(prange->svms, struct kfd_process, svms); in svm_migrate_vma_to_vram() 675 struct kfd_process *p = container_of(prange->svms, struct kfd_process, svms); in svm_migrate_vma_to_ram() 897 struct kfd_process *p; in svm_migrate_to_ram()
|
H A D | Makefile | 33 $(AMDKFD_PATH)/kfd_process.o \
|
H A D | kfd_flat_memory.c | 356 int kfd_init_apertures(struct kfd_process *process) in kfd_init_apertures()
|
H A D | kfd_process_queue_manager.c | 154 void kfd_process_dequeue_from_all_devices(struct kfd_process *p) in kfd_process_dequeue_from_all_devices() 162 int pqm_init(struct process_queue_manager *pqm, struct kfd_process *p) in pqm_init() 678 int kfd_process_get_queue_info(struct kfd_process *p, in kfd_process_get_queue_info() 857 int kfd_criu_checkpoint_queues(struct kfd_process *p, in kfd_criu_checkpoint_queues() 899 int kfd_criu_restore_queue(struct kfd_process *p, in kfd_criu_restore_queue()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdkfd/ |
H A D | kfd_priv.h | 524 struct kfd_process *process; 558 struct kfd_process *process; 652 * Starts from kfd_process.per_device_data. 660 struct kfd_process *process; 738 struct kfd_process { struct 740 * kfd_process are stored in an mm_struct*->kfd_process* 741 * hash table (kfd_processes in kfd_process.c) 829 typedef int amdkfd_ioctl_t(struct file *filep, struct kfd_process *p, 843 struct kfd_process *kfd_create_proces [all...] |
H A D | kfd_process.c | 47 * List of struct kfd_process (field kfd_process). 66 static struct kfd_process *find_process(const struct task_struct *thread); 68 static struct kfd_process *create_process(const struct task_struct *thread); 69 static int kfd_process_init_cwsr_apu(struct kfd_process *p, struct file *filep); 271 struct kfd_process *proc = NULL; in kfd_get_cu_occupancy() 302 struct kfd_process *p = container_of(attr, struct kfd_process, in kfd_procfs_show() 462 struct kfd_process *proc; in kfd_procfs_add_queue() 484 static int kfd_sysfs_create_file(struct kfd_process * [all...] |
H A D | kfd_events.c | 64 static struct kfd_signal_page *allocate_signal_page(struct kfd_process *p) in allocate_signal_page() 94 static int allocate_event_notification_slot(struct kfd_process *p, in allocate_event_notification_slot() 128 static struct kfd_event *lookup_event_by_id(struct kfd_process *p, uint32_t id) in lookup_event_by_id() 135 * @p: Pointer to struct kfd_process 151 struct kfd_process *p, uint32_t id, uint32_t bits) in lookup_signaled_event_by_partial_id() 182 struct kfd_process *p, in create_signal_event() 212 static int create_other_event(struct kfd_process *p, struct kfd_event *ev) in create_other_event() 230 void kfd_event_init_process(struct kfd_process *p) in kfd_event_init_process() 238 static void destroy_event(struct kfd_process *p, struct kfd_event *ev) in destroy_event() 255 static void destroy_events(struct kfd_process * [all...] |
H A D | kfd_chardev.c | 111 struct kfd_process *process; in kfd_open() 149 struct kfd_process *process = filep->private_data; in kfd_release() 157 static int kfd_ioctl_get_version(struct file *filep, struct kfd_process *p, in kfd_ioctl_get_version() 274 static int kfd_ioctl_create_queue(struct file *filep, struct kfd_process *p, in kfd_ioctl_create_queue() 350 static int kfd_ioctl_destroy_queue(struct file *filp, struct kfd_process *p, in kfd_ioctl_destroy_queue() 368 static int kfd_ioctl_update_queue(struct file *filp, struct kfd_process *p, in kfd_ioctl_update_queue() 414 static int kfd_ioctl_set_cu_mask(struct file *filp, struct kfd_process *p, in kfd_ioctl_set_cu_mask() 470 struct kfd_process *p, void *data) in kfd_ioctl_get_queue_wave_state() 488 struct kfd_process *p, void *data) in kfd_ioctl_set_memory_policy() 540 struct kfd_process * in kfd_ioctl_set_trap_handler() [all...] |
H A D | kfd_dbgmgr.h | 237 struct kfd_process *process; 246 struct kfd_process *process; 287 long kfd_dbgmgr_register(struct kfd_dbgmgr *pmgr, struct kfd_process *p); 288 long kfd_dbgmgr_unregister(struct kfd_dbgmgr *pmgr, struct kfd_process *p);
|
H A D | kfd_iommu.c | 113 struct kfd_process *p = pdd->process; in kfd_iommu_bind_process_to_device() 136 void kfd_iommu_unbind_process(struct kfd_process *p) in kfd_iommu_unbind_process() 149 struct kfd_process *p; in iommu_pasid_shutdown_callback() 221 struct kfd_process *p; in kfd_bind_processes_to_device() 262 struct kfd_process *p; in kfd_unbind_processes_from_device()
|
H A D | kfd_iommu.h | 36 void kfd_iommu_unbind_process(struct kfd_process *p); 62 static inline void kfd_iommu_unbind_process(struct kfd_process *p) in kfd_iommu_unbind_process()
|
H A D | kfd_dbgmgr.c | 96 long kfd_dbgmgr_register(struct kfd_dbgmgr *pmgr, struct kfd_process *p) in kfd_dbgmgr_register() 116 long kfd_dbgmgr_unregister(struct kfd_dbgmgr *pmgr, struct kfd_process *p) in kfd_dbgmgr_unregister()
|
H A D | Makefile | 33 $(AMDKFD_PATH)/kfd_process.o \
|
H A D | kfd_flat_memory.c | 364 int kfd_init_apertures(struct kfd_process *process) in kfd_init_apertures()
|
H A D | kfd_doorbell.c | 126 int kfd_doorbell_mmap(struct kfd_dev *dev, struct kfd_process *process, in kfd_doorbell_mmap()
|
H A D | kfd_process_queue_manager.c | 127 void kfd_process_dequeue_from_all_devices(struct kfd_process *p) in kfd_process_dequeue_from_all_devices() 135 int pqm_init(struct process_queue_manager *pqm, struct kfd_process *p) in pqm_init()
|