diff options
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/Kconfig | 3 | ||||
-rw-r--r-- | arch/s390/Makefile | 3 | ||||
-rw-r--r-- | arch/s390/include/asm/local64.h | 1 | ||||
-rw-r--r-- | arch/s390/include/asm/mmu.h | 5 | ||||
-rw-r--r-- | arch/s390/kernel/time.c | 8 | ||||
-rw-r--r-- | arch/s390/mm/vmem.c | 4 |
6 files changed, 12 insertions, 12 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index bee1c0f794cf..f0777a47e3a5 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -40,9 +40,6 @@ config ARCH_HAS_ILOG2_U64 | |||
40 | config GENERIC_HWEIGHT | 40 | config GENERIC_HWEIGHT |
41 | def_bool y | 41 | def_bool y |
42 | 42 | ||
43 | config GENERIC_TIME | ||
44 | def_bool y | ||
45 | |||
46 | config GENERIC_TIME_VSYSCALL | 43 | config GENERIC_TIME_VSYSCALL |
47 | def_bool y | 44 | def_bool y |
48 | 45 | ||
diff --git a/arch/s390/Makefile b/arch/s390/Makefile index 30c5f01f93b0..0c9e6c6d2a64 100644 --- a/arch/s390/Makefile +++ b/arch/s390/Makefile | |||
@@ -24,7 +24,8 @@ CHECKFLAGS += -D__s390__ -msize-long | |||
24 | else | 24 | else |
25 | LD_BFD := elf64-s390 | 25 | LD_BFD := elf64-s390 |
26 | LDFLAGS := -m elf64_s390 | 26 | LDFLAGS := -m elf64_s390 |
27 | MODFLAGS += -fpic -D__PIC__ | 27 | KBUILD_AFLAGS_MODULE += -fpic -D__PIC__ |
28 | KBUILD_CFLAGS_MODULE += -fpic -D__PIC__ | ||
28 | KBUILD_CFLAGS += -m64 | 29 | KBUILD_CFLAGS += -m64 |
29 | KBUILD_AFLAGS += -m64 | 30 | KBUILD_AFLAGS += -m64 |
30 | UTS_MACHINE := s390x | 31 | UTS_MACHINE := s390x |
diff --git a/arch/s390/include/asm/local64.h b/arch/s390/include/asm/local64.h new file mode 100644 index 000000000000..36c93b5cc239 --- /dev/null +++ b/arch/s390/include/asm/local64.h | |||
@@ -0,0 +1 @@ | |||
#include <asm-generic/local64.h> | |||
diff --git a/arch/s390/include/asm/mmu.h b/arch/s390/include/asm/mmu.h index 03be99919d62..99e3409102b9 100644 --- a/arch/s390/include/asm/mmu.h +++ b/arch/s390/include/asm/mmu.h | |||
@@ -13,4 +13,9 @@ typedef struct { | |||
13 | int alloc_pgste; /* cloned contexts will have extended page tables */ | 13 | int alloc_pgste; /* cloned contexts will have extended page tables */ |
14 | } mm_context_t; | 14 | } mm_context_t; |
15 | 15 | ||
16 | #define INIT_MM_CONTEXT(name) \ | ||
17 | .context.list_lock = __SPIN_LOCK_UNLOCKED(name.context.list_lock), \ | ||
18 | .context.crst_list = LIST_HEAD_INIT(name.context.crst_list), \ | ||
19 | .context.pgtable_list = LIST_HEAD_INIT(name.context.pgtable_list), | ||
20 | |||
16 | #endif | 21 | #endif |
diff --git a/arch/s390/kernel/time.c b/arch/s390/kernel/time.c index 15a7536452d5..2896cac9c14a 100644 --- a/arch/s390/kernel/time.c +++ b/arch/s390/kernel/time.c | |||
@@ -207,8 +207,8 @@ struct clocksource * __init clocksource_default_clock(void) | |||
207 | return &clocksource_tod; | 207 | return &clocksource_tod; |
208 | } | 208 | } |
209 | 209 | ||
210 | void update_vsyscall(struct timespec *wall_time, struct clocksource *clock, | 210 | void update_vsyscall(struct timespec *wall_time, struct timespec *wtm, |
211 | u32 mult) | 211 | struct clocksource *clock, u32 mult) |
212 | { | 212 | { |
213 | if (clock != &clocksource_tod) | 213 | if (clock != &clocksource_tod) |
214 | return; | 214 | return; |
@@ -219,8 +219,8 @@ void update_vsyscall(struct timespec *wall_time, struct clocksource *clock, | |||
219 | vdso_data->xtime_tod_stamp = clock->cycle_last; | 219 | vdso_data->xtime_tod_stamp = clock->cycle_last; |
220 | vdso_data->xtime_clock_sec = wall_time->tv_sec; | 220 | vdso_data->xtime_clock_sec = wall_time->tv_sec; |
221 | vdso_data->xtime_clock_nsec = wall_time->tv_nsec; | 221 | vdso_data->xtime_clock_nsec = wall_time->tv_nsec; |
222 | vdso_data->wtom_clock_sec = wall_to_monotonic.tv_sec; | 222 | vdso_data->wtom_clock_sec = wtm->tv_sec; |
223 | vdso_data->wtom_clock_nsec = wall_to_monotonic.tv_nsec; | 223 | vdso_data->wtom_clock_nsec = wtm->tv_nsec; |
224 | vdso_data->ntp_mult = mult; | 224 | vdso_data->ntp_mult = mult; |
225 | smp_wmb(); | 225 | smp_wmb(); |
226 | ++vdso_data->tb_update_count; | 226 | ++vdso_data->tb_update_count; |
diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c index 90165e7ca04e..34c43f23b28c 100644 --- a/arch/s390/mm/vmem.c +++ b/arch/s390/mm/vmem.c | |||
@@ -332,10 +332,6 @@ void __init vmem_map_init(void) | |||
332 | unsigned long start, end; | 332 | unsigned long start, end; |
333 | int i; | 333 | int i; |
334 | 334 | ||
335 | spin_lock_init(&init_mm.context.list_lock); | ||
336 | INIT_LIST_HEAD(&init_mm.context.crst_list); | ||
337 | INIT_LIST_HEAD(&init_mm.context.pgtable_list); | ||
338 | init_mm.context.noexec = 0; | ||
339 | ro_start = ((unsigned long)&_stext) & PAGE_MASK; | 335 | ro_start = ((unsigned long)&_stext) & PAGE_MASK; |
340 | ro_end = PFN_ALIGN((unsigned long)&_eshared); | 336 | ro_end = PFN_ALIGN((unsigned long)&_eshared); |
341 | for (i = 0; i < MEMORY_CHUNKS && memory_chunk[i].size > 0; i++) { | 337 | for (i = 0; i < MEMORY_CHUNKS && memory_chunk[i].size > 0; i++) { |