Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 May 2017 13:01:15 +0000 (UTC)
From:      Andrew Turner <andrew@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r318252 - head/sys/arm64/include
Message-ID:  <201705131301.v4DD1FBc038256@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201705131301.v4DD1FBc038256>