From: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
To: akpm@linux-foundation.org
Cc: linux-kernel@vger.kernel.org, hch@infradead.org,
Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>,
linux-arch@vger.kernel.org
Subject: [patch 08/10] Defines the linker macro EXTRA_RWDATA for the marker data section.
Date: Wed, 09 May 2007 21:56:03 -0400 [thread overview]
Message-ID: <20070510020917.463378427@polymtl.ca> (raw)
In-Reply-To: 20070510015555.973107048@polymtl.ca
[-- Attachment #1: linux-kernel-markers-define-the-linker-macro-extra_rwdata.patch --]
[-- Type: text/plain, Size: 2784 bytes --]
Defines the linker macro EXTRA_RWDATA for the marker data section. It puts
the marker data in a separate section that will not pollute the normal .data
section, which minimize the cache impact. Markers need such a special section
because they define a lot of spreaded and small data structures at multiple
sites.
This patch also creates the __markers_strings section (ro marker strings) and
makes sure the __markers section is aligned by putting it before the
__ksymtab_strings (not after).
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
include/asm-generic/vmlinux.lds.h | 25 +++++++++++++------------
1 file changed, 13 insertions(+), 12 deletions(-)
Index: linux-2.6-lttng/include/asm-generic/vmlinux.lds.h
===================================================================
--- linux-2.6-lttng.orig/include/asm-generic/vmlinux.lds.h 2007-05-08 17:07:12.000000000 -0400
+++ linux-2.6-lttng/include/asm-generic/vmlinux.lds.h 2007-05-08 17:09:12.000000000 -0400
@@ -116,21 +116,19 @@
*(__kcrctab_gpl_future) \
VMLINUX_SYMBOL(__stop___kcrctab_gpl_future) = .; \
} \
- \
- /* Kernel symbol table: strings */ \
- __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
- *(__ksymtab_strings) \
- } \
/* Kernel markers : pointers */ \
- .markers : AT(ADDR(.markers) - LOAD_OFFSET) { \
+ __markers : AT(ADDR(__markers) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start___markers) = .; \
- *(.markers) \
+ *(__markers) \
VMLINUX_SYMBOL(__stop___markers) = .; \
} \
- .markers.c : AT(ADDR(.markers.c) - LOAD_OFFSET) { \
- VMLINUX_SYMBOL(__start___markers_c) = .; \
- *(.markers.c) \
- VMLINUX_SYMBOL(__stop___markers_c) = .; \
+ /* Kernel symbol table: strings */ \
+ __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
+ *(__ksymtab_strings) \
+ } \
+ /* Kernel markers : strings */ \
+ __markers_strings : AT(ADDR(__markers_strings) - LOAD_OFFSET) { \
+ *(__markers_strings) \
} \
__end_rodata = .; \
. = ALIGN(4096); \
@@ -145,6 +143,10 @@
\
. = ALIGN(4096);
+#define EXTRA_RWDATA \
+ . = ALIGN(8); \
+ *(__markers_data) \
+
#define SECURITY_INIT \
.security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__security_initcall_start) = .; \
@@ -241,4 +243,3 @@
*(.initcall6s.init) \
*(.initcall7.init) \
*(.initcall7s.init)
-
--
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
WARNING: multiple messages have this Message-ID (diff)
From: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
To: akpm@linux-foundation.org
Cc: linux-kernel@vger.kernel.org, hch@infradead.org,
Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>,
<linux-arch@vger.kernel.org>
Subject: [patch 08/10] Defines the linker macro EXTRA_RWDATA for the marker data section.
Date: Wed, 09 May 2007 21:56:03 -0400 [thread overview]
Message-ID: <20070510020917.463378427@polymtl.ca> (raw)
In-Reply-To: 20070510015555.973107048@polymtl.ca
[-- Attachment #1: linux-kernel-markers-define-the-linker-macro-extra_rwdata.patch --]
[-- Type: text/plain, Size: 2784 bytes --]
Defines the linker macro EXTRA_RWDATA for the marker data section. It puts
the marker data in a separate section that will not pollute the normal .data
section, which minimize the cache impact. Markers need such a special section
because they define a lot of spreaded and small data structures at multiple
sites.
This patch also creates the __markers_strings section (ro marker strings) and
makes sure the __markers section is aligned by putting it before the
__ksymtab_strings (not after).
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
include/asm-generic/vmlinux.lds.h | 25 +++++++++++++------------
1 file changed, 13 insertions(+), 12 deletions(-)
Index: linux-2.6-lttng/include/asm-generic/vmlinux.lds.h
===================================================================
--- linux-2.6-lttng.orig/include/asm-generic/vmlinux.lds.h 2007-05-08 17:07:12.000000000 -0400
+++ linux-2.6-lttng/include/asm-generic/vmlinux.lds.h 2007-05-08 17:09:12.000000000 -0400
@@ -116,21 +116,19 @@
*(__kcrctab_gpl_future) \
VMLINUX_SYMBOL(__stop___kcrctab_gpl_future) = .; \
} \
- \
- /* Kernel symbol table: strings */ \
- __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
- *(__ksymtab_strings) \
- } \
/* Kernel markers : pointers */ \
- .markers : AT(ADDR(.markers) - LOAD_OFFSET) { \
+ __markers : AT(ADDR(__markers) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start___markers) = .; \
- *(.markers) \
+ *(__markers) \
VMLINUX_SYMBOL(__stop___markers) = .; \
} \
- .markers.c : AT(ADDR(.markers.c) - LOAD_OFFSET) { \
- VMLINUX_SYMBOL(__start___markers_c) = .; \
- *(.markers.c) \
- VMLINUX_SYMBOL(__stop___markers_c) = .; \
+ /* Kernel symbol table: strings */ \
+ __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
+ *(__ksymtab_strings) \
+ } \
+ /* Kernel markers : strings */ \
+ __markers_strings : AT(ADDR(__markers_strings) - LOAD_OFFSET) { \
+ *(__markers_strings) \
} \
__end_rodata = .; \
. = ALIGN(4096); \
@@ -145,6 +143,10 @@
\
. = ALIGN(4096);
+#define EXTRA_RWDATA \
+ . = ALIGN(8); \
+ *(__markers_data) \
+
#define SECURITY_INIT \
.security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__security_initcall_start) = .; \
@@ -241,4 +243,3 @@
*(.initcall6s.init) \
*(.initcall7.init) \
*(.initcall7s.init)
-
--
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
next prev parent reply other threads:[~2007-05-10 2:52 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-10 1:55 [patch 00/10] Linux Kernel Markers for 2.6.21-mm2 Mathieu Desnoyers
2007-05-10 1:55 ` [patch 01/10] Linux Kernel Markers - Add kconfig menus for the marker code Mathieu Desnoyers
2007-05-10 6:57 ` Christoph Hellwig
2007-05-10 1:55 ` [patch 02/10] Linux Kernel Markers, architecture independent code Mathieu Desnoyers
2007-05-10 5:10 ` Alexey Dobriyan
2007-05-10 12:58 ` Mathieu Desnoyers
2007-05-10 13:12 ` Mathieu Desnoyers
2007-05-10 19:00 ` Alexey Dobriyan
2007-05-10 19:46 ` Mathieu Desnoyers
2007-05-10 1:55 ` [patch 03/10] Allow userspace applications to use marker.h to parse the markers section in the kernel binary Mathieu Desnoyers
2007-05-10 6:51 ` Christoph Hellwig
2007-05-10 22:14 ` David Smith
2007-06-23 8:09 ` Christoph Hellwig
2007-06-23 9:25 ` Alan Cox
2007-06-23 9:32 ` Christoph Hellwig
2007-06-23 9:49 ` Alan Cox
2007-06-23 10:06 ` Christoph Hellwig
2007-06-23 14:55 ` Alan Cox
2007-05-10 1:55 ` [patch 04/10] Linux Kernel Markers - PowerPC optimized version Mathieu Desnoyers
2007-05-10 6:57 ` Christoph Hellwig
2007-05-10 1:56 ` [patch 05/10] Linux Kernel Markers - i386 " Mathieu Desnoyers
2007-05-10 9:06 ` Andi Kleen
2007-05-10 15:55 ` Mathieu Desnoyers
2007-05-10 16:28 ` Alan Cox
2007-05-10 16:59 ` Mathieu Desnoyers
2007-05-11 4:57 ` Ananth N Mavinakayanahalli
2007-05-11 18:55 ` Mathieu Desnoyers
2007-05-12 5:29 ` Suparna Bhattacharya
2007-05-11 6:04 ` Andi Kleen
2007-05-11 18:02 ` Mathieu Desnoyers
2007-05-11 21:56 ` Alan Cox
2007-05-13 15:20 ` Mathieu Desnoyers
2007-05-10 1:56 ` [patch 06/10] Linux Kernel Markers - Non optimized architectures Mathieu Desnoyers
2007-05-10 5:13 ` Alexey Dobriyan
2007-05-10 6:56 ` Christoph Hellwig
2007-05-10 13:11 ` Mathieu Desnoyers
2007-05-10 13:40 ` Alan Cox
2007-05-10 14:25 ` Mathieu Desnoyers
2007-05-10 15:33 ` Nicholas Berry
2007-05-10 16:09 ` Alan Cox
2007-05-10 1:56 ` [patch 07/10] Linux Kernel Markers - Documentation Mathieu Desnoyers
2007-05-10 6:58 ` Christoph Hellwig
2007-05-10 11:41 ` Alan Cox
2007-05-10 11:41 ` Christoph Hellwig
2007-05-10 12:48 ` Alan Cox
2007-05-10 12:52 ` Pekka Enberg
2007-05-10 13:04 ` Alan Cox
2007-05-10 13:16 ` Pekka J Enberg
2007-05-10 13:43 ` Alan Cox
2007-05-10 14:04 ` Pekka J Enberg
2007-05-10 14:12 ` Mathieu Desnoyers
2007-05-10 14:14 ` Mathieu Desnoyers
2007-05-11 15:05 ` Valdis.Kletnieks
2007-05-10 12:00 ` Christoph Hellwig
2007-05-10 15:51 ` Scott Preece
2007-05-10 1:56 ` Mathieu Desnoyers [this message]
2007-05-10 1:56 ` [patch 08/10] Defines the linker macro EXTRA_RWDATA for the marker data section Mathieu Desnoyers
2007-05-10 1:56 ` [patch 09/10] Linux Kernel Markers - Use EXTRA_RWDATA in architectures Mathieu Desnoyers
2007-05-10 1:56 ` Mathieu Desnoyers
2007-05-10 1:56 ` [patch 10/10] Port of blktrace to the Linux Kernel Markers Mathieu Desnoyers
2007-05-10 6:53 ` Christoph Hellwig
2007-05-10 9:20 ` Jens Axboe
2007-05-10 2:30 ` [patch 00/10] Linux Kernel Markers for 2.6.21-mm2 Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070510020917.463378427@polymtl.ca \
--to=mathieu.desnoyers@polymtl.ca \
--cc=akpm@linux-foundation.org \
--cc=hch@infradead.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.