Index: uspace/lib/c/arch/abs32le/_link.ld.in
===================================================================
--- uspace/lib/c/arch/abs32le/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/abs32le/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -14,12 +14,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70001000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70001000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x1000 + SIZEOF_HEADERS;
 #endif
+	
 	.text : {
 		*(.text .text.*);
Index: uspace/lib/c/arch/amd64/_link.ld.in
===================================================================
--- uspace/lib/c/arch/amd64/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/amd64/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -15,12 +15,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70001000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70001000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x1000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/arm32/_link.ld.in
===================================================================
--- uspace/lib/c/arch/arm32/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/arm32/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -14,12 +14,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70001000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70001000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x1000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/ia32/_link.ld.in
===================================================================
--- uspace/lib/c/arch/ia32/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/ia32/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -19,9 +19,4 @@
 
 SECTIONS {
-#if defined(LOADER) || defined(DLEXE)
-	.interp : {
-		*(.interp);
-	} :interp
-#endif
 #ifdef LOADER
 	. = 0x70001000 + SIZEOF_HEADERS;
@@ -29,4 +24,11 @@
 	. = 0x1000 + SIZEOF_HEADERS;
 #endif
+	
+#if defined(LOADER) || defined(DLEXE)
+	.interp : {
+		*(.interp);
+	} :interp :text
+#endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/ia64/_link.ld.in
===================================================================
--- uspace/lib/c/arch/ia64/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/ia64/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -14,12 +14,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x800000000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x800000000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x4000 + SIZEOF_HEADERS;
 #endif
+	
 	/*
 	 * XXX This is just a work around. Problem: .init section does not
@@ -27,5 +28,5 @@
 	 */
 	. = ALIGN(., 16);
-
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/mips32/_link.ld.in
===================================================================
--- uspace/lib/c/arch/mips32/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/mips32/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -14,12 +14,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70004000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70004000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x4000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/mips64/_link.ld.in
===================================================================
--- uspace/lib/c/arch/mips64/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/mips64/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -15,12 +15,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70004000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70004000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x4000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/ppc32/_link.ld.in
===================================================================
--- uspace/lib/c/arch/ppc32/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/ppc32/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -15,12 +15,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70001000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70001000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x1000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
Index: uspace/lib/c/arch/sparc64/_link.ld.in
===================================================================
--- uspace/lib/c/arch/sparc64/_link.ld.in	(revision 100806465eefdbc917d7fcd6da881dc85f5a0c8b)
+++ uspace/lib/c/arch/sparc64/_link.ld.in	(revision 6e3b052d97f39ce95b84f7498e9fce932bc1bff7)
@@ -14,12 +14,13 @@
 SECTIONS {
 #ifdef LOADER
+	. = 0x70004000 + SIZEOF_HEADERS;
+	
 	.interp : {
 		*(.interp);
-	} :interp
-	
-	. = 0x70004000 + SIZEOF_HEADERS;
+	} :interp :text
 #else
 	. = 0x4000 + SIZEOF_HEADERS;
 #endif
+	
 	.init : {
 		*(.init);
