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.