Args for the BSD DRM_PUT_USER_UNCHECKED were swapped.
diff --git a/bsd-core/drm_os_freebsd.h b/bsd-core/drm_os_freebsd.h
index 480a53f..00a4402 100644
--- a/bsd-core/drm_os_freebsd.h
+++ b/bsd-core/drm_os_freebsd.h
@@ -271,7 +271,7 @@
copyout(arg2, arg1, arg3)
#define DRM_GET_USER_UNCHECKED(val, uaddr) \
((val) = fuword(uaddr), 0)
-#define DRM_PUT_USER_UNCHECKED(val, uaddr) \
+#define DRM_PUT_USER_UNCHECKED(uaddr, val) \
suword(uaddr, val)
/* DRM_READMEMORYBARRIER() prevents reordering of reads.
diff --git a/bsd/drm_os_freebsd.h b/bsd/drm_os_freebsd.h
index 480a53f..00a4402 100644
--- a/bsd/drm_os_freebsd.h
+++ b/bsd/drm_os_freebsd.h
@@ -271,7 +271,7 @@
copyout(arg2, arg1, arg3)
#define DRM_GET_USER_UNCHECKED(val, uaddr) \
((val) = fuword(uaddr), 0)
-#define DRM_PUT_USER_UNCHECKED(val, uaddr) \
+#define DRM_PUT_USER_UNCHECKED(uaddr, val) \
suword(uaddr, val)
/* DRM_READMEMORYBARRIER() prevents reordering of reads.