diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-05-03 05:02:57 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-05-05 07:00:24 -0400 |
commit | c39f52a9edc5e0687cbb54c08bcd78cf7fe26b62 (patch) | |
tree | 0308d789adc477be502381353555dbf3fd61b13d /arch/parisc/mm | |
parent | cf5e6def83fabdf10a05dc5a5981eda1672cb79c (diff) |
parisc: Use generic init_task
Same code, except: The alignment of init_thread_union is handled via
the linker script, so no point to have it with the data structure. The
extra asm(".data") looks like a leftover from an asm to C conversion
and is pointless.
Use the generic version.
Move the page table data to parisc/mm/init.c and get rid of
parisc/../init_task.c
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: James E.J. Bottomley <jejb@parisc-linux.org>
Link: http://lkml.kernel.org/r/20120503085035.150896946@linutronix.de
Diffstat (limited to 'arch/parisc/mm')
-rw-r--r-- | arch/parisc/mm/init.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c index 82f364e209fc..3ac462de53a4 100644 --- a/arch/parisc/mm/init.c +++ b/arch/parisc/mm/init.c | |||
@@ -33,6 +33,18 @@ | |||
33 | 33 | ||
34 | extern int data_start; | 34 | extern int data_start; |
35 | 35 | ||
36 | #if PT_NLEVELS == 3 | ||
37 | /* NOTE: This layout exactly conforms to the hybrid L2/L3 page table layout | ||
38 | * with the first pmd adjacent to the pgd and below it. gcc doesn't actually | ||
39 | * guarantee that global objects will be laid out in memory in the same order | ||
40 | * as the order of declaration, so put these in different sections and use | ||
41 | * the linker script to order them. */ | ||
42 | pmd_t pmd0[PTRS_PER_PMD] __attribute__ ((__section__ (".data..vm0.pmd"), aligned(PAGE_SIZE))); | ||
43 | #endif | ||
44 | |||
45 | pgd_t swapper_pg_dir[PTRS_PER_PGD] __attribute__ ((__section__ (".data..vm0.pgd"), aligned(PAGE_SIZE))); | ||
46 | pte_t pg0[PT_INITIAL * PTRS_PER_PTE] __attribute__ ((__section__ (".data..vm0.pte"), aligned(PAGE_SIZE))); | ||
47 | |||
36 | #ifdef CONFIG_DISCONTIGMEM | 48 | #ifdef CONFIG_DISCONTIGMEM |
37 | struct node_map_data node_data[MAX_NUMNODES] __read_mostly; | 49 | struct node_map_data node_data[MAX_NUMNODES] __read_mostly; |
38 | unsigned char pfnnid_map[PFNNID_MAP_MAX] __read_mostly; | 50 | unsigned char pfnnid_map[PFNNID_MAP_MAX] __read_mostly; |