Module Name: src
Committed By: riastradh
Date: Sun Dec 19 12:38:24 UTC 2021
Modified Files:
src/sys/external/bsd/drm2/dist/drm/amd/amdgpu: amdgpu_vm.c
Log Message:
amdgpu: store process and lwp info for netbsd in amdgpu taskinfo.
Author: phone <[email protected]>
Committer: Taylor R Campbell <[email protected]>
To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 \
src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c
diff -u src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c:1.11 src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c:1.12
--- src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c:1.11 Sun Dec 19 12:33:02 2021
+++ src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vm.c Sun Dec 19 12:38:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: amdgpu_vm.c,v 1.11 2021/12/19 12:33:02 riastradh Exp $ */
+/* $NetBSD: amdgpu_vm.c,v 1.12 2021/12/19 12:38:24 riastradh Exp $ */
/*
* Copyright 2008 Advanced Micro Devices, Inc.
@@ -28,7 +28,7 @@
* Jerome Glisse
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: amdgpu_vm.c,v 1.11 2021/12/19 12:33:02 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: amdgpu_vm.c,v 1.12 2021/12/19 12:38:24 riastradh Exp $");
#include <linux/dma-fence-array.h>
#include <linux/interval_tree_generic.h>
@@ -3284,7 +3284,6 @@ int amdgpu_vm_ioctl(struct drm_device *d
void amdgpu_vm_get_task_info(struct amdgpu_device *adev, unsigned int pasid,
struct amdgpu_task_info *task_info)
{
-#ifndef __NetBSD__ /* XXX amdgpu task info */
struct amdgpu_vm *vm;
unsigned long flags;
@@ -3295,7 +3294,6 @@ void amdgpu_vm_get_task_info(struct amdg
*task_info = vm->task_info;
spin_unlock_irqrestore(&adev->vm_manager.pasid_lock, flags);
-#endif
}
/**
@@ -3305,10 +3303,18 @@ void amdgpu_vm_get_task_info(struct amdg
*/
void amdgpu_vm_set_task_info(struct amdgpu_vm *vm)
{
-#ifndef __NetBSD__ /* XXX amdgpu task info */
if (vm->task_info.pid)
return;
+#ifdef __NetBSD__
+ vm->task_info.pid = curlwp->l_proc->p_pid;
+ vm->task_info.tgid = curlwp->l_lid;
+ strlcpy(vm->task_info.process_name, curlwp->l_proc->p_comm,
+ sizeof vm->task_info.process_name);
+ if (curlwp->l_name)
+ strlcpy(vm->task_info.task_name, curlwp->l_name,
+ sizeof vm->task_info.task_name);
+#else
vm->task_info.pid = current->pid;
get_task_comm(vm->task_info.task_name, current);