Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 Oct 2013 22:15:50 +0000 (UTC)
From:      Olivier Houchard <cognet@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r257231 - head/sys/arm/include
Message-ID:  <201310272215.r9RMFoNx056487@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cognet
Date: Sun Oct 27 22:15:50 2013
New Revision: 257231
URL: http://svnweb.freebsd.org/changeset/base/257231

Log:
  Make sure the PCB is aligned on 8 bytes, we may use ldrd/strd to access it,
  which may have strong alignment requirements.

Modified:
  head/sys/arm/include/pcb.h

Modified: head/sys/arm/include/pcb.h
==============================================================================
--- head/sys/arm/include/pcb.h	Sun Oct 27 22:05:10 2013	(r257230)
+++ head/sys/arm/include/pcb.h	Sun Oct 27 22:15:50 2013	(r257231)
@@ -81,7 +81,11 @@ struct pcb {
 	struct	pcb_arm32 un_32;
 	struct vfp_state pcb_vfpstate;          /* VP/NEON state */
 	u_int pcb_vfpcpu;                       /* VP/NEON last cpu */
-};
+} __aligned(8); /* 
+		 * We need the PCB to be aligned on 8 bytes, as we may
+		 * access it using ldrd/strd, and some CPUs require it
+		 * to by aligned on 8 bytes.
+		 */
 
 /*
  * No additional data for core dumps.



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