|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [XEN] Implement proper __read_mostly memo
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 6b821e3105977b393c261a6f474d991256264484
# Parent aa25666d464332f52302f8f0d0768da9729befa6
[XEN] Implement proper __read_mostly memory arrangemengt for x86.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
xen/arch/x86/x86_32/xen.lds.S | 3 +++
xen/arch/x86/x86_64/xen.lds.S | 3 +++
xen/include/asm-ia64/linux-xen/asm/cache.h | 2 ++
xen/include/asm-powerpc/cache.h | 2 ++
xen/include/asm-x86/cache.h | 2 ++
xen/include/xen/config.h | 1 -
6 files changed, 12 insertions(+), 1 deletion(-)
diff -r aa25666d4643 -r 6b821e310597 xen/arch/x86/x86_32/xen.lds.S
--- a/xen/arch/x86/x86_32/xen.lds.S Tue Aug 08 14:56:22 2006 +0100
+++ b/xen/arch/x86/x86_32/xen.lds.S Tue Aug 08 15:14:43 2006 +0100
@@ -46,6 +46,9 @@ SECTIONS
CONSTRUCTORS
} :text
+ . = ALIGN(128);
+ .data.read_mostly : { *(.data.read_mostly) } :text
+
. = ALIGN(4096); /* Init code and data */
__init_begin = .;
.text.init : { *(.text.init) } :text
diff -r aa25666d4643 -r 6b821e310597 xen/arch/x86/x86_64/xen.lds.S
--- a/xen/arch/x86/x86_64/xen.lds.S Tue Aug 08 14:56:22 2006 +0100
+++ b/xen/arch/x86/x86_64/xen.lds.S Tue Aug 08 15:14:43 2006 +0100
@@ -44,6 +44,9 @@ SECTIONS
CONSTRUCTORS
} :text
+ . = ALIGN(128);
+ .data.read_mostly : { *(.data.read_mostly) } :text
+
. = ALIGN(4096); /* Init code and data */
__init_begin = .;
.text.init : { *(.text.init) } :text
diff -r aa25666d4643 -r 6b821e310597 xen/include/asm-ia64/linux-xen/asm/cache.h
--- a/xen/include/asm-ia64/linux-xen/asm/cache.h Tue Aug 08 14:56:22
2006 +0100
+++ b/xen/include/asm-ia64/linux-xen/asm/cache.h Tue Aug 08 15:14:43
2006 +0100
@@ -32,4 +32,6 @@
#endif
#endif
+#define __read_mostly
+
#endif /* _ASM_IA64_CACHE_H */
diff -r aa25666d4643 -r 6b821e310597 xen/include/asm-powerpc/cache.h
--- a/xen/include/asm-powerpc/cache.h Tue Aug 08 14:56:22 2006 +0100
+++ b/xen/include/asm-powerpc/cache.h Tue Aug 08 15:14:43 2006 +0100
@@ -57,4 +57,6 @@ static __inline__ void synchronize_cache
isync();
}
+#define __read_mostly
+
#endif
diff -r aa25666d4643 -r 6b821e310597 xen/include/asm-x86/cache.h
--- a/xen/include/asm-x86/cache.h Tue Aug 08 14:56:22 2006 +0100
+++ b/xen/include/asm-x86/cache.h Tue Aug 08 15:14:43 2006 +0100
@@ -10,4 +10,6 @@
#define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT)
#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
+#define __read_mostly __attribute__((__section__(".data.read_mostly")))
+
#endif
diff -r aa25666d4643 -r 6b821e310597 xen/include/xen/config.h
--- a/xen/include/xen/config.h Tue Aug 08 14:56:22 2006 +0100
+++ b/xen/include/xen/config.h Tue Aug 08 15:14:43 2006 +0100
@@ -50,6 +50,5 @@
#endif /* !__ASSEMBLY__ */
#define fastcall
-#define __read_mostly
#endif /* __XEN_CONFIG_H__ */
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] [XEN] Implement proper __read_mostly memory arrangemengt for x86.,
Xen patchbot-unstable <=
|
|
|
|
|