Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2af12ae authored by Tim Abbott's avatar Tim Abbott Committed by Sam Ravnborg
Browse files

Add new macros for page-aligned data and bss sections.



This patch is preparation for replacing most uses of
".bss.page_aligned" and ".data.page_aligned" in the kernel with
macros, so that the section name can later be changed without having
to touch a lot of the kernel.

The long-term goal here is to be able to change the kernel's magic
section names to those that are compatible with -ffunction-sections
-fdata-sections.  This requires renaming all magic sections with names
of the form ".data.foo".

Signed-off-by: default avatarTim Abbott <tabbott@ksplice.com>
Acked-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
parent 73f1d939
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -21,6 +21,15 @@
#define __page_aligned_data	__section(.data.page_aligned) __aligned(PAGE_SIZE)
#define __page_aligned_bss	__section(.bss.page_aligned) __aligned(PAGE_SIZE)

/*
 * For assembly routines.
 *
 * Note when using these that you must specify the appropriate
 * alignment directives yourself
 */
#define __PAGE_ALIGNED_DATA	.section ".data.page_aligned", "aw"
#define __PAGE_ALIGNED_BSS	.section ".bss.page_aligned", "aw"

/*
 * This is used by architectures to keep arguments on the stack
 * untouched by the compiler by keeping them live until the end.