From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Richard Henderson <rth@twiddle.net>
Cc: Sam Ravnborg <sam@ravnborg.org>, LKML <linux-kernel@vger.kernel.org>
Subject: [RFC] alpha: vmlinux.lds cleanup - use THREAD_SIZE macro
Date: Tue, 26 Feb 2008 22:51:59 +0300 [thread overview]
Message-ID: <20080226195159.GC6748@cvg> (raw)
This patch modifies thread_info.h header to be able to include it
into linker script and then we're able to use THREAD_SIZE in
vmlinux.lds
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
---
COMPLETELY UNTESTED
Any comments are welcome!
Index: linux-2.6.git/arch/alpha/kernel/vmlinux.lds.S
===================================================================
--- linux-2.6.git.orig/arch/alpha/kernel/vmlinux.lds.S 2008-01-29 18:03:45.000000000 +0300
+++ linux-2.6.git/arch/alpha/kernel/vmlinux.lds.S 2008-02-26 21:49:59.000000000 +0300
@@ -1,5 +1,6 @@
#include <asm-generic/vmlinux.lds.h>
#include <asm/page.h>
+#include <asm/thread_info.h>
OUTPUT_FORMAT("elf64-alpha")
OUTPUT_ARCH(alpha)
@@ -88,7 +89,7 @@ SECTIONS
PERCPU(PAGE_SIZE)
- . = ALIGN(2 * PAGE_SIZE);
+ . = ALIGN(THREAD_SIZE);
__init_end = .;
/* Freed after init ends here */
Index: linux-2.6.git/include/asm-alpha/thread_info.h
===================================================================
--- linux-2.6.git.orig/include/asm-alpha/thread_info.h 2008-01-21 19:35:26.000000000 +0300
+++ linux-2.6.git/include/asm-alpha/thread_info.h 2008-02-26 22:00:42.000000000 +0300
@@ -7,9 +7,7 @@
#include <asm/processor.h>
#include <asm/types.h>
#include <asm/hwrpb.h>
-#endif
-#ifndef __ASSEMBLY__
struct thread_info {
struct pcb_struct pcb; /* palcode state */
@@ -50,13 +48,14 @@ register struct thread_info *__current_t
#define current_thread_info() __current_thread_info
/* Thread information allocation. */
-#define THREAD_SIZE (2*PAGE_SIZE)
#define alloc_thread_info(tsk) \
((struct thread_info *) __get_free_pages(GFP_KERNEL,1))
#define free_thread_info(ti) free_pages((unsigned long) (ti), 1)
#endif /* __ASSEMBLY__ */
+#define THREAD_SIZE (2 * PAGE_SIZE)
+
#define PREEMPT_ACTIVE 0x40000000
/*
@@ -94,6 +93,8 @@ register struct thread_info *__current_t
#define ALPHA_UAC_MASK (1 << TIF_UAC_NOPRINT | 1 << TIF_UAC_NOFIX | \
1 << TIF_UAC_SIGBUS)
+#ifndef __ASSEMBLY__
+
#define SET_UNALIGN_CTL(task,value) ({ \
task_thread_info(task)->flags = ((task_thread_info(task)->flags & \
~ALPHA_UAC_MASK) \
@@ -112,5 +113,7 @@ register struct thread_info *__current_t
(int __user *)(value)); \
})
+#endif /* __ASSEMBLY__ */
+
#endif /* __KERNEL__ */
#endif /* _ALPHA_THREAD_INFO_H */
next reply other threads:[~2008-02-27 14:36 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-26 19:51 Cyrill Gorcunov [this message]
2008-02-27 18:57 ` [RFC] alpha: vmlinux.lds cleanup - use THREAD_SIZE macro Sam Ravnborg
2008-02-27 19:01 ` Cyrill Gorcunov
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=20080226195159.GC6748@cvg \
--to=gorcunov@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rth@twiddle.net \
--cc=sam@ravnborg.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox