svn commit: r318252 - head/sys/arm64/include

Andrew Turner andrew at FreeBSD.org
Sat May 13 13:01:16 UTC 2017


Author: andrew
Date: Sat May 13 13:01:15 2017
New Revision: 318252
URL: https://svnweb.freebsd.org/changeset/base/318252

Log:
  Add the VM_MEMATTR_WRITE_THROUGH memory type to arm64 and use it to support
  VM_MEMATTR_WRITE_COMBINING in the kernel. This fixes a bug where Xorg would
  use write back cached memory for its graphics buffers. This would produce
  artifacts on the screen as cachelines were written to memory.
  
  MFC after:	1 week
  Sponsored by:	DARPA, AFRL

Modified:
  head/sys/arm64/include/vm.h

Modified: head/sys/arm64/include/vm.h
==============================================================================
--- head/sys/arm64/include/vm.h	Sat May 13 10:00:24 2017	(r318251)
+++ head/sys/arm64/include/vm.h	Sat May 13 13:01:15 2017	(r318252)
@@ -30,9 +30,15 @@
 #define	_MACHINE_VM_H_
 
 /* Memory attribute configuration. */
-#define	VM_MEMATTR_DEVICE	0
-#define	VM_MEMATTR_UNCACHEABLE	1
-#define	VM_MEMATTR_WRITE_BACK	2
+#define	VM_MEMATTR_DEVICE		0
+#define	VM_MEMATTR_UNCACHEABLE		1
+#define	VM_MEMATTR_WRITE_BACK		2
+#define	VM_MEMATTR_WRITE_THROUGH	3
+
+#ifdef _KERNEL
+/* If defined vmstat will try to use both of these in a switch statement */
+#define	VM_MEMATTR_WRITE_COMBINING	VM_MEMATTR_WRITE_THROUGH
+#endif
 
 #define	VM_MEMATTR_DEFAULT	VM_MEMATTR_WRITE_BACK
 


More information about the svn-src-head mailing list