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

Ed Maste emaste at FreeBSD.org
Sat Jun 17 14:46:16 UTC 2017


Author: emaste
Date: Sat Jun 17 14:46:14 2017
New Revision: 320056
URL: https://svnweb.freebsd.org/changeset/base/320056

Log:
  arm: set appropriate section flags for .init_pagetable
  
  The arm kernel linker scripts place the .init_pagetable section in .bss,
  but .init_pagetable had no section flags set, and so did not match the
  expected flags for .bss.
  
  GNU ld silently ignores this case, but lld reports an error:
  
  ld: error: incompatible section flags for .bss
  >>> locore.o:(.init_pagetable): 0x0
  >>> output section .bss: 0x3
  
  PR:		220055
  Submitted by:	mmel, Rafael Espíndola
  MFC after:	3 weeks
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/sys/arm/arm/locore-v4.S
  head/sys/arm/arm/locore-v6.S

Modified: head/sys/arm/arm/locore-v4.S
==============================================================================
--- head/sys/arm/arm/locore-v4.S	Sat Jun 17 14:39:25 2017	(r320055)
+++ head/sys/arm/arm/locore-v4.S	Sat Jun 17 14:46:14 2017	(r320056)
@@ -365,7 +365,7 @@ svcstk:
  * Memory for the initial pagetable. We are unable to place this in
  * the bss as this will be cleared after the table is loaded.
  */
-	.section ".init_pagetable"
+	.section ".init_pagetable", "aw", %nobits
 	.align	14 /* 16KiB aligned */
 pagetable:
 	.space	L1_TABLE_SIZE

Modified: head/sys/arm/arm/locore-v6.S
==============================================================================
--- head/sys/arm/arm/locore-v6.S	Sat Jun 17 14:39:25 2017	(r320055)
+++ head/sys/arm/arm/locore-v6.S	Sat Jun 17 14:46:14 2017	(r320056)
@@ -436,7 +436,7 @@ svcstk:
  * Memory for the initial pagetable. We are unable to place this in
  * the bss as this will be cleared after the table is loaded.
  */
-	.section ".init_pagetable"
+	.section ".init_pagetable", "aw", %nobits
 	.align	14 /* 16KiB aligned */
 	.globl	boot_pt1
 boot_pt1:


More information about the svn-src-head mailing list