public inbox for linux-sh@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 3/7] sh: use NOSAVE_DATA macro for .data.nosave section.
       [not found]   ` <1241135883-9766-3-git-send-email-tabbott@mit.edu>
@ 2009-04-30 23:57     ` Tim Abbott
  2009-04-30 23:58       ` [PATCH 4/7] sh: use new macro for .data.cacheline_aligned section Tim Abbott
  0 siblings, 1 reply; 5+ messages in thread
From: Tim Abbott @ 2009-04-30 23:57 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Linux kernel mailing list, Anders Kaseorg, Waseem Daher,
	Denys Vlasenko, Jeff Arnold, Paul Mundt, Tim Abbott, linux-sh

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: linux-sh@vger.kernel.org
---
 arch/sh/kernel/vmlinux_32.lds.S |    7 +------
 arch/sh/kernel/vmlinux_64.lds.S |    7 +------
 2 files changed, 2 insertions(+), 12 deletions(-)

diff --git a/arch/sh/kernel/vmlinux_32.lds.S b/arch/sh/kernel/vmlinux_32.lds.S
index 325af0b..5f5e190 100644
--- a/arch/sh/kernel/vmlinux_32.lds.S
+++ b/arch/sh/kernel/vmlinux_32.lds.S
@@ -70,12 +70,7 @@ SECTIONS
 		*(.data.read_mostly)
 
 		PAGE_ALIGNED_DATA
-
-		__nosave_begin = .;
-		*(.data.nosave)
-		. = ALIGN(PAGE_SIZE);
-		__nosave_end = .;
-
+		NOSAVE_DATA
 		DATA_DATA
 		CONSTRUCTORS
 	}
diff --git a/arch/sh/kernel/vmlinux_64.lds.S b/arch/sh/kernel/vmlinux_64.lds.S
index b222700..9cccb3d 100644
--- a/arch/sh/kernel/vmlinux_64.lds.S
+++ b/arch/sh/kernel/vmlinux_64.lds.S
@@ -79,12 +79,7 @@ SECTIONS
 		*(.data.read_mostly)
 
 		PAGE_ALIGNED_DATA
-
-		__nosave_begin = .;
-		*(.data.nosave)
-		. = ALIGN(PAGE_SIZE);
-		__nosave_end = .;
-
+		NOSAVE_DATA
 		DATA_DATA
 		CONSTRUCTORS
 	}
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 4/7] sh: use new macro for .data.cacheline_aligned section.
  2009-04-30 23:57     ` [PATCH 3/7] sh: use NOSAVE_DATA macro for .data.nosave section Tim Abbott
@ 2009-04-30 23:58       ` Tim Abbott
  2009-04-30 23:58         ` [PATCH 5/7] sh: use new macros for .data.init_task Tim Abbott
  0 siblings, 1 reply; 5+ messages in thread
From: Tim Abbott @ 2009-04-30 23:58 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Linux kernel mailing list, Anders Kaseorg, Waseem Daher,
	Denys Vlasenko, Jeff Arnold, Paul Mundt, Tim Abbott, linux-sh

I moved the section after NOSAVE_DATA with the intention of having the
alignment levels of the sections placed in the .data output section
being strictly decreasing.

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: linux-sh@vger.kernel.org
---
 arch/sh/kernel/vmlinux_32.lds.S |    4 +---
 arch/sh/kernel/vmlinux_64.lds.S |    4 +---
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/arch/sh/kernel/vmlinux_32.lds.S b/arch/sh/kernel/vmlinux_32.lds.S
index 5f5e190..eabb0bb 100644
--- a/arch/sh/kernel/vmlinux_32.lds.S
+++ b/arch/sh/kernel/vmlinux_32.lds.S
@@ -64,13 +64,11 @@ SECTIONS
 		*(.data.init_task)
 
 		. = ALIGN(L1_CACHE_BYTES);
-		*(.data.cacheline_aligned)
-
-		. = ALIGN(L1_CACHE_BYTES);
 		*(.data.read_mostly)
 
 		PAGE_ALIGNED_DATA
 		NOSAVE_DATA
+		CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
 		DATA_DATA
 		CONSTRUCTORS
 	}
diff --git a/arch/sh/kernel/vmlinux_64.lds.S b/arch/sh/kernel/vmlinux_64.lds.S
index 9cccb3d..e0e2e1b 100644
--- a/arch/sh/kernel/vmlinux_64.lds.S
+++ b/arch/sh/kernel/vmlinux_64.lds.S
@@ -73,13 +73,11 @@ SECTIONS
 		*(.data.init_task)
 
 		. = ALIGN(L1_CACHE_BYTES);
-		*(.data.cacheline_aligned)
-
-		. = ALIGN(L1_CACHE_BYTES);
 		*(.data.read_mostly)
 
 		PAGE_ALIGNED_DATA
 		NOSAVE_DATA
+		CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
 		DATA_DATA
 		CONSTRUCTORS
 	}
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 5/7] sh: use new macros for .data.init_task.
  2009-04-30 23:58       ` [PATCH 4/7] sh: use new macro for .data.cacheline_aligned section Tim Abbott
@ 2009-04-30 23:58         ` Tim Abbott
  2009-04-30 23:58           ` [PATCH 6/7] sh: use new macro for .data.read_mostly section Tim Abbott
  0 siblings, 1 reply; 5+ messages in thread
From: Tim Abbott @ 2009-04-30 23:58 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Linux kernel mailing list, Anders Kaseorg, Waseem Daher,
	Denys Vlasenko, Jeff Arnold, Paul Mundt, Tim Abbott, linux-sh

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: linux-sh@vger.kernel.org
---
 arch/sh/kernel/init_task.c      |    3 +--
 arch/sh/kernel/vmlinux_32.lds.S |    3 +--
 arch/sh/kernel/vmlinux_64.lds.S |    3 +--
 3 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/arch/sh/kernel/init_task.c b/arch/sh/kernel/init_task.c
index 80c35ff..9522d9a 100644
--- a/arch/sh/kernel/init_task.c
+++ b/arch/sh/kernel/init_task.c
@@ -20,8 +20,7 @@ EXPORT_SYMBOL(init_mm);
  * way process stacks are handled. This is done by having a special
  * "init_task" linker map entry..
  */
-union thread_union init_thread_union
-	__attribute__((__section__(".data.init_task"))) +union thread_union init_thread_union __init_task_data  		{ INIT_THREAD_INFO(init_task) };
 
 /*
diff --git a/arch/sh/kernel/vmlinux_32.lds.S b/arch/sh/kernel/vmlinux_32.lds.S
index eabb0bb..7a0f3c4 100644
--- a/arch/sh/kernel/vmlinux_32.lds.S
+++ b/arch/sh/kernel/vmlinux_32.lds.S
@@ -59,9 +59,8 @@ SECTIONS
 	.uncached.data : { *(.uncached.data) }
 	__uncached_end = .;
 
-	. = ALIGN(THREAD_SIZE);
 	.data : {			/* Data */
-		*(.data.init_task)
+		INIT_TASK_DATA(THREAD_SIZE)
 
 		. = ALIGN(L1_CACHE_BYTES);
 		*(.data.read_mostly)
diff --git a/arch/sh/kernel/vmlinux_64.lds.S b/arch/sh/kernel/vmlinux_64.lds.S
index e0e2e1b..5cd3e78 100644
--- a/arch/sh/kernel/vmlinux_64.lds.S
+++ b/arch/sh/kernel/vmlinux_64.lds.S
@@ -68,9 +68,8 @@ SECTIONS
 	NOTES 
 	RO_DATA(PAGE_SIZE)
 
-	. = ALIGN(THREAD_SIZE);
 	.data : C_PHYS(.data) {			/* Data */
-		*(.data.init_task)
+		INIT_TASK_DATA(THREAD_SIZE)
 
 		. = ALIGN(L1_CACHE_BYTES);
 		*(.data.read_mostly)
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 6/7] sh: use new macro for .data.read_mostly section.
  2009-04-30 23:58         ` [PATCH 5/7] sh: use new macros for .data.init_task Tim Abbott
@ 2009-04-30 23:58           ` Tim Abbott
  2009-04-30 23:58             ` [PATCH 7/7] sh: convert to new generic read_mostly support Tim Abbott
  0 siblings, 1 reply; 5+ messages in thread
From: Tim Abbott @ 2009-04-30 23:58 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Linux kernel mailing list, Anders Kaseorg, Waseem Daher,
	Denys Vlasenko, Jeff Arnold, Paul Mundt, Tim Abbott, linux-sh

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: linux-sh@vger.kernel.org
---
 arch/sh/kernel/vmlinux_32.lds.S |    5 +----
 arch/sh/kernel/vmlinux_64.lds.S |    5 +----
 2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/arch/sh/kernel/vmlinux_32.lds.S b/arch/sh/kernel/vmlinux_32.lds.S
index 7a0f3c4..de80e50 100644
--- a/arch/sh/kernel/vmlinux_32.lds.S
+++ b/arch/sh/kernel/vmlinux_32.lds.S
@@ -61,13 +61,10 @@ SECTIONS
 
 	.data : {			/* Data */
 		INIT_TASK_DATA(THREAD_SIZE)
-
-		. = ALIGN(L1_CACHE_BYTES);
-		*(.data.read_mostly)
-
 		PAGE_ALIGNED_DATA
 		NOSAVE_DATA
 		CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
+		READ_MOSTLY_DATA(L1_CACHE_BYTES)
 		DATA_DATA
 		CONSTRUCTORS
 	}
diff --git a/arch/sh/kernel/vmlinux_64.lds.S b/arch/sh/kernel/vmlinux_64.lds.S
index 5cd3e78..72e856b 100644
--- a/arch/sh/kernel/vmlinux_64.lds.S
+++ b/arch/sh/kernel/vmlinux_64.lds.S
@@ -70,13 +70,10 @@ SECTIONS
 
 	.data : C_PHYS(.data) {			/* Data */
 		INIT_TASK_DATA(THREAD_SIZE)
-
-		. = ALIGN(L1_CACHE_BYTES);
-		*(.data.read_mostly)
-
 		PAGE_ALIGNED_DATA
 		NOSAVE_DATA
 		CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
+		READ_MOSTLY_DATA(L1_CACHE_BYTES)
 		DATA_DATA
 		CONSTRUCTORS
 	}
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 7/7] sh: convert to new generic read_mostly support.
  2009-04-30 23:58           ` [PATCH 6/7] sh: use new macro for .data.read_mostly section Tim Abbott
@ 2009-04-30 23:58             ` Tim Abbott
  0 siblings, 0 replies; 5+ messages in thread
From: Tim Abbott @ 2009-04-30 23:58 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Linux kernel mailing list, Anders Kaseorg, Waseem Daher,
	Denys Vlasenko, Jeff Arnold, Paul Mundt, Tim Abbott, linux-sh

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: linux-sh@vger.kernel.org
---
 arch/sh/Kconfig             |    3 +++
 arch/sh/include/asm/cache.h |    2 --
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index e7390dd..efafd78 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -137,6 +137,9 @@ config ARCH_HAS_DEFAULT_IDLE
 config IO_TRAPPED
 	bool
 
+config HAVE_READ_MOSTLY_DATA
+	def_bool y
+
 source "init/Kconfig"
 
 source "kernel/Kconfig.freezer"
diff --git a/arch/sh/include/asm/cache.h b/arch/sh/include/asm/cache.h
index 02df18e..0d44279 100644
--- a/arch/sh/include/asm/cache.h
+++ b/arch/sh/include/asm/cache.h
@@ -14,8 +14,6 @@
 
 #define L1_CACHE_BYTES		(1 << L1_CACHE_SHIFT)
 
-#define __read_mostly __attribute__((__section__(".data.read_mostly")))
-
 #ifndef __ASSEMBLY__
 struct cache_info {
 	unsigned int ways;		/* Number of cache ways */
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-04-30 23:58 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1241135883-9766-1-git-send-email-tabbott@mit.edu>
     [not found] ` <1241135883-9766-2-git-send-email-tabbott@mit.edu>
     [not found]   ` <1241135883-9766-3-git-send-email-tabbott@mit.edu>
2009-04-30 23:57     ` [PATCH 3/7] sh: use NOSAVE_DATA macro for .data.nosave section Tim Abbott
2009-04-30 23:58       ` [PATCH 4/7] sh: use new macro for .data.cacheline_aligned section Tim Abbott
2009-04-30 23:58         ` [PATCH 5/7] sh: use new macros for .data.init_task Tim Abbott
2009-04-30 23:58           ` [PATCH 6/7] sh: use new macro for .data.read_mostly section Tim Abbott
2009-04-30 23:58             ` [PATCH 7/7] sh: convert to new generic read_mostly support Tim Abbott

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox