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

Commit caa81d67 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6

* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
  [S390] make page table upgrade work again
  [S390] make page table walking more robust
  [S390] Dont check for pfn_valid() in uaccess_pt.c
  [S390] ftrace/mcount: fix kernel stack backchain
  [S390] topology: define SD_MC_INIT to fix performance regression
  [S390] __div64_31 broken for CONFIG_MARCH_G5
parents 2d8620cb 0fb1d9bc
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -22,4 +22,9 @@
#define MCL_CURRENT	1		/* lock all current mappings */
#define MCL_FUTURE	2		/* lock all future mappings */

#if defined(__KERNEL__) && !defined(__ASSEMBLY__) && defined(CONFIG_64BIT)
int s390_mmap_check(unsigned long addr, unsigned long len);
#define arch_mmap_check(addr,len,flags)	s390_mmap_check(addr,len)
#endif

#endif /* __S390_MMAN_H__ */
+2 −3
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ extern void print_cpu_info(struct cpuinfo_S390 *);
extern int get_cpu_capability(unsigned int *);

/*
 * User space process size: 2GB for 31 bit, 4TB for 64 bit.
 * User space process size: 2GB for 31 bit, 4TB or 8PT for 64 bit.
 */
#ifndef __s390x__

@@ -70,8 +70,7 @@ extern int get_cpu_capability(unsigned int *);

#else /* __s390x__ */

#define TASK_SIZE_OF(tsk)	(test_tsk_thread_flag(tsk,TIF_31BIT) ? \
					(1UL << 31) : (1UL << 53))
#define TASK_SIZE_OF(tsk)	((tsk)->mm->context.asce_limit)
#define TASK_UNMAPPED_BASE	(test_thread_flag(TIF_31BIT) ? \
					(1UL << 30) : (1UL << 41))
#define TASK_SIZE		TASK_SIZE_OF(current)
+2 −0
Original line number Diff line number Diff line
@@ -30,6 +30,8 @@ static inline void s390_init_cpu_topology(void)
};
#endif

#define SD_MC_INIT SD_CPU_INIT

#include <asm-generic/topology.h>

#endif /* _ASM_S390_TOPOLOGY_H */
+4 −2
Original line number Diff line number Diff line
@@ -5,6 +5,8 @@
 *
 */

#include <asm/asm-offsets.h>

#ifndef CONFIG_64BIT
.globl _mcount
_mcount:
@@ -14,7 +16,7 @@ _mcount:
	ahi	%r15,-96
	l	%r3,100(%r15)
	la	%r2,0(%r14)
	st	%r1,0(%r15)
	st	%r1,__SF_BACKCHAIN(%r15)
	la	%r3,0(%r3)
	bras	%r14,0f
	.long	ftrace_trace_function
@@ -38,7 +40,7 @@ _mcount:
	stg	%r14,112(%r15)
	lgr	%r1,%r15
	aghi	%r15,-160
	stg	%r1,0(%r15)
	stg	%r1,__SF_BACKCHAIN(%r15)
	lgr	%r2,%r14
	lg	%r3,168(%r15)
	larl	%r14,ftrace_trace_function
+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ static uint32_t __div64_31(uint64_t *n, uint32_t base)
		"	clr	%0,%3\n"
		"	jl	0f\n"
		"	slr	%0,%3\n"
		"	alr	%1,%2\n"
		"	ahi	%1,1\n"
		"0:\n"
		: "+d" (reg2), "+d" (reg3), "=d" (tmp)
		: "d" (base), "2" (1UL) : "cc" );
Loading