svn commit: r259936 - head/sys/arm/arm

Adrian Chadd adrian at FreeBSD.org
Fri Dec 27 05:01:13 UTC 2013


Author: adrian
Date: Fri Dec 27 05:01:13 2013
New Revision: 259936
URL: http://svnweb.freebsd.org/changeset/base/259936

Log:
  Revert r252694 - which attempted to fix bit emulation for armv6/armv7.
  
  This seems to cause issues with jemalloc + {dhclient, sshd}.
  
  Thus, revert this for now until the root cause can be found and
  fixed.
  
  This should quieten some runtime problems with the Raspberry Pi.
  
  PR: kern/185046
  MFC after: 3 days

Modified:
  head/sys/arm/arm/pmap-v6.c

Modified: head/sys/arm/arm/pmap-v6.c
==============================================================================
--- head/sys/arm/arm/pmap-v6.c	Fri Dec 27 04:30:32 2013	(r259935)
+++ head/sys/arm/arm/pmap-v6.c	Fri Dec 27 05:01:13 2013	(r259936)
@@ -3094,21 +3094,16 @@ validate:
 			if ((m->oflags & VPO_UNMANAGED) == 0) {
 				vm_page_aflag_set(m, PGA_WRITEABLE);
 				/*
-				 * Enable write permission if the access type
-				 * indicates write intention. Emulate modified
-				 * bit otherwise.
+				 * XXX: Skip modified bit emulation for now.
+				 *	The emulation reveals problems
+				 *	that result in random failures
+				 *	during memory allocation on some
+				 *	platforms.
+				 *	Therefore, the page is marked RW
+				 *	immediately.
 				 */
-				if ((access & VM_PROT_WRITE) != 0) {
-					npte &= ~(L2_APX);
-					/*
-					 * The access type and permissions
-					 * indicate that the page will be
-					 * written as soon as returned from
-					 * fault service.
-					 * Mark it dirty from the outset.
-					 */
-					vm_page_dirty(m);
-				}
+				npte &= ~(L2_APX);
+				vm_page_dirty(m);
 			} else
 				npte &= ~(L2_APX);
 		}


More information about the svn-src-all mailing list