* [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