On 2019-11-11 11:44, Hans Petter Selasky wrote:
Seems like we can optimise away one more write memory barrier.

If you are building from ports, simply:

cd work/kms-drm*
cat seqlock.diff | patch -p1


Hi,

Here is one more debug patch you can try. See if you get that print added in the patch in dmesg.

--HPS

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
index a6e0a16ae..0697d70f4 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
@@ -31,6 +31,8 @@
 #include "amdgpu_vm.h"
 #include "amdgpu_amdkfd.h"
 
+#include <sys/kdb.h>
+
 /* Special VM and GART address alignment needed for VI pre-Fiji due to
  * a HW bug.
  */
@@ -236,6 +238,12 @@ static int amdgpu_amdkfd_remove_eviction_fence(struct amdgpu_bo *bo,
 		*ef_count = 0;
 	}
 
+	if (resv != NULL &&
+	    (struct thread *)SX_OWNER(resv->lock.base.sx.sx_lock) != curthread) {
+		printf("Called unlocked\n");
+		kdb_backtrace();
+	}
+
 	old = reservation_object_get_list(resv);
 	if (!old)
 		return 0;
_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to