summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
be1b3d8)
We have the macro _AC() generally available now
so the calculation of PAGE_SIZE can be made
assembler compatible.
Introduce use of _AC() and kill all users of
ASM_PAGE_SIZE.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
DEFINE(ASM_PTE_ENTRY_SIZE, PTE_ENTRY_SIZE);
DEFINE(ASM_PFN_PTE_SHIFT, PFN_PTE_SHIFT);
DEFINE(ASM_PT_INITIAL, PT_INITIAL);
DEFINE(ASM_PTE_ENTRY_SIZE, PTE_ENTRY_SIZE);
DEFINE(ASM_PFN_PTE_SHIFT, PFN_PTE_SHIFT);
DEFINE(ASM_PT_INITIAL, PT_INITIAL);
- DEFINE(ASM_PAGE_SIZE, PAGE_SIZE);
DEFINE(ASM_PAGE_SIZE_DIV64, PAGE_SIZE/64);
DEFINE(ASM_PAGE_SIZE_DIV128, PAGE_SIZE/128);
BLANK();
DEFINE(ASM_PAGE_SIZE_DIV64, PAGE_SIZE/64);
DEFINE(ASM_PAGE_SIZE_DIV128, PAGE_SIZE/128);
BLANK();
#include <asm/asm-offsets.h>
#include <asm/unistd.h>
#include <asm/errno.h>
#include <asm/asm-offsets.h>
#include <asm/unistd.h>
#include <asm/errno.h>
#include <asm/psw.h>
#include <asm/thread_info.h>
#include <asm/assembly.h>
#include <asm/psw.h>
#include <asm/thread_info.h>
#include <asm/assembly.h>
ENTRY(linux_gateway_page)
/* ADDRESS 0x00 to 0xb0 = 176 bytes / 4 bytes per insn = 44 insns */
ENTRY(linux_gateway_page)
/* ADDRESS 0x00 to 0xb0 = 176 bytes / 4 bytes per insn = 44 insns */
/* Make sure nothing else is placed on this page */
/* Make sure nothing else is placed on this page */
END(linux_gateway_page)
ENTRY(end_linux_gateway_page)
END(linux_gateway_page)
ENTRY(end_linux_gateway_page)
/* Light-weight-syscall table */
/* Start of lws table. */
ENTRY(lws_table)
/* Light-weight-syscall table */
/* Start of lws table. */
ENTRY(lws_table)
END(lws_table)
/* End of lws table */
END(lws_table)
/* End of lws table */
ENTRY(sys_call_table)
#include "syscall_table.S"
END(sys_call_table)
#ifdef CONFIG_64BIT
ENTRY(sys_call_table)
#include "syscall_table.S"
END(sys_call_table)
#ifdef CONFIG_64BIT
ENTRY(sys_call_table64)
#define SYSCALL_TABLE_64BIT
#include "syscall_table.S"
ENTRY(sys_call_table64)
#define SYSCALL_TABLE_64BIT
#include "syscall_table.S"
* that we can properly leave these
* as writable
*/
* that we can properly leave these
* as writable
*/
- . = ALIGN(ASM_PAGE_SIZE);
data_start = .;
. = ALIGN(16);
/* Exception table */
data_start = .;
. = ALIGN(16);
/* Exception table */
/* nosave data is really only used for software suspend...it's here
* just in case we ever implement it
*/
/* nosave data is really only used for software suspend...it's here
* just in case we ever implement it
*/
- . = ALIGN(ASM_PAGE_SIZE);
__nosave_begin = .;
.data_nosave : {
*(.data.nosave)
}
__nosave_begin = .;
.data_nosave : {
*(.data.nosave)
}
- . = ALIGN(ASM_PAGE_SIZE);
__nosave_end = .;
/* End of data section */
__nosave_end = .;
/* End of data section */
/* BSS */
__bss_start = .;
/* page table entries need to be PAGE_SIZE aligned */
/* BSS */
__bss_start = .;
/* page table entries need to be PAGE_SIZE aligned */
- . = ALIGN(ASM_PAGE_SIZE);
.data.vmpages : {
*(.data.vm0.pmd)
*(.data.vm0.pgd)
.data.vmpages : {
*(.data.vm0.pmd)
*(.data.vm0.pgd)
*(.exit.data)
}
#ifdef CONFIG_BLK_DEV_INITRD
*(.exit.data)
}
#ifdef CONFIG_BLK_DEV_INITRD
- . = ALIGN(ASM_PAGE_SIZE);
.init.ramfs : {
__initramfs_start = .;
*(.init.ramfs)
.init.ramfs : {
__initramfs_start = .;
*(.init.ramfs)
- PERCPU(ASM_PAGE_SIZE)
- . = ALIGN(ASM_PAGE_SIZE);
+ PERCPU(PAGE_SIZE)
+ . = ALIGN(PAGE_SIZE);
__init_end = .;
/* freed after init ends here */
_end = . ;
__init_end = .;
/* freed after init ends here */
_end = . ;
+#include <linux/const.h>
+
#if defined(CONFIG_PARISC_PAGE_SIZE_4KB)
# define PAGE_SHIFT 12
#elif defined(CONFIG_PARISC_PAGE_SIZE_16KB)
#if defined(CONFIG_PARISC_PAGE_SIZE_4KB)
# define PAGE_SHIFT 12
#elif defined(CONFIG_PARISC_PAGE_SIZE_16KB)
#else
# error "unknown default kernel page size"
#endif
#else
# error "unknown default kernel page size"
#endif
-#define PAGE_SIZE (1UL << PAGE_SHIFT)
+#define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT)
#define PAGE_MASK (~(PAGE_SIZE-1))
#define PAGE_MASK (~(PAGE_SIZE-1))