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

Commit 367b0df1 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm

Pull ARM updates from Russell King:

 - StrongARM SA1111 updates to modernise and remove cruft

 - Add StrongARM gpio drivers for board GPIOs

 - Verify size of zImage is what we expect to avoid issues with
   appended DTB

 - nommu updates from Vladimir Murzin

 - page table read-write-execute checking from Jinbum Park

 - Broadcom Brahma-B15 cache updates from Florian Fainelli

 - Avoid failure with kprobes test caused by inappropriately
   placed kprobes

 - Remove __memzero optimisation (which was incorrectly being
   used directly by some drivers)

* 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (32 commits)
  ARM: 8745/1: get rid of __memzero()
  ARM: 8744/1: don't discard memblock for kexec
  ARM: 8743/1: bL_switcher: add MODULE_LICENSE tag
  ARM: 8742/1: Always use REFCOUNT_FULL
  ARM: 8741/1: B15: fix unused label warnings
  ARM: 8740/1: NOMMU: Make sure we do not hold stale data in mem[] array
  ARM: 8739/1: NOMMU: Setup VBAR/Hivecs for secondaries cores
  ARM: 8738/1: Disable CONFIG_DEBUG_VIRTUAL for NOMMU
  ARM: 8737/1: mm: dump: add checking for writable and executable
  ARM: 8736/1: mm: dump: make the page table dumping seq_file
  ARM: 8735/1: mm: dump: make page table dumping reusable
  ARM: sa1100/neponset: add GPIO drivers for control and modem registers
  ARM: sa1100/assabet: add BCR/BSR GPIO driver
  ARM: 8734/1: mm: idmap: Mark variables as ro_after_init
  ARM: 8733/1: hw_breakpoint: Mark variables as __ro_after_init
  ARM: 8732/1: NOMMU: Allow userspace to access background MPU region
  ARM: 8727/1: MAINTAINERS: Update brcmstb entries to cover B15 code
  ARM: 8728/1: B15: Register reboot notifier for KEXEC
  ARM: 8730/1: B15: Add suspend/resume hooks
  ARM: 8726/1: B15: Add CPU hotplug awareness
  ...
parents 44644391 3a175cdf
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -2855,6 +2855,8 @@ S: Maintained
F:	arch/arm/mach-bcm/*brcmstb*
F:	arch/arm/mach-bcm/*brcmstb*
F:	arch/arm/boot/dts/bcm7*.dts*
F:	arch/arm/boot/dts/bcm7*.dts*
F:	drivers/bus/brcmstb_gisb.c
F:	drivers/bus/brcmstb_gisb.c
F:	arch/arm/mm/cache-b15-rac.c
F:	arch/arm/include/asm/hardware/cache-b15-rac.h
N:	brcmstb
N:	brcmstb


BROADCOM BMIPS CPUFREQ DRIVER
BROADCOM BMIPS CPUFREQ DRIVER
+4 −8
Original line number Original line Diff line number Diff line
@@ -3,8 +3,8 @@ config ARM
	bool
	bool
	default y
	default y
	select ARCH_CLOCKSOURCE_DATA
	select ARCH_CLOCKSOURCE_DATA
	select ARCH_DISCARD_MEMBLOCK if !HAVE_ARCH_PFN_VALID
	select ARCH_DISCARD_MEMBLOCK if !HAVE_ARCH_PFN_VALID && !KEXEC
	select ARCH_HAS_DEBUG_VIRTUAL
	select ARCH_HAS_DEBUG_VIRTUAL if MMU
	select ARCH_HAS_DEVMEM_IS_ALLOWED
	select ARCH_HAS_DEVMEM_IS_ALLOWED
	select ARCH_HAS_ELF_RANDOMIZE
	select ARCH_HAS_ELF_RANDOMIZE
	select ARCH_HAS_SET_MEMORY
	select ARCH_HAS_SET_MEMORY
@@ -100,6 +100,7 @@ config ARM
	select OLD_SIGACTION
	select OLD_SIGACTION
	select OLD_SIGSUSPEND3
	select OLD_SIGSUSPEND3
	select PERF_USE_VMALLOC
	select PERF_USE_VMALLOC
	select REFCOUNT_FULL
	select RTC_LIB
	select RTC_LIB
	select SYS_SUPPORTS_APM_EMULATION
	select SYS_SUPPORTS_APM_EMULATION
	# Above selects are sorted alphabetically; please add new ones
	# Above selects are sorted alphabetically; please add new ones
@@ -1526,12 +1527,10 @@ config THUMB2_KERNEL
	bool "Compile the kernel in Thumb-2 mode" if !CPU_THUMBONLY
	bool "Compile the kernel in Thumb-2 mode" if !CPU_THUMBONLY
	depends on (CPU_V7 || CPU_V7M) && !CPU_V6 && !CPU_V6K
	depends on (CPU_V7 || CPU_V7M) && !CPU_V6 && !CPU_V6K
	default y if CPU_THUMBONLY
	default y if CPU_THUMBONLY
	select ARM_ASM_UNIFIED
	select ARM_UNWIND
	select ARM_UNWIND
	help
	help
	  By enabling this option, the kernel will be compiled in
	  By enabling this option, the kernel will be compiled in
	  Thumb-2 mode. A compiler/assembler that understand the unified
	  Thumb-2 mode.
	  ARM-Thumb syntax is needed.


	  If unsure, say N.
	  If unsure, say N.


@@ -1566,9 +1565,6 @@ config THUMB2_AVOID_R_ARM_THM_JUMP11


	  Unless you are sure your tools don't have this problem, say Y.
	  Unless you are sure your tools don't have this problem, say Y.


config ARM_ASM_UNIFIED
	bool

config ARM_PATCH_IDIV
config ARM_PATCH_IDIV
	bool "Runtime patch udiv/sdiv instructions into __aeabi_{u}idiv()"
	bool "Runtime patch udiv/sdiv instructions into __aeabi_{u}idiv()"
	depends on CPU_32v7 && !XIP_KERNEL
	depends on CPU_32v7 && !XIP_KERNEL
+32 −1
Original line number Original line Diff line number Diff line
@@ -3,10 +3,14 @@ menu "Kernel hacking"


source "lib/Kconfig.debug"
source "lib/Kconfig.debug"


config ARM_PTDUMP
config ARM_PTDUMP_CORE
	def_bool n

config ARM_PTDUMP_DEBUGFS
	bool "Export kernel pagetable layout to userspace via debugfs"
	bool "Export kernel pagetable layout to userspace via debugfs"
	depends on DEBUG_KERNEL
	depends on DEBUG_KERNEL
	depends on MMU
	depends on MMU
	select ARM_PTDUMP_CORE
	select DEBUG_FS
	select DEBUG_FS
	---help---
	---help---
	  Say Y here if you want to show the kernel pagetable layout in a
	  Say Y here if you want to show the kernel pagetable layout in a
@@ -16,6 +20,33 @@ config ARM_PTDUMP
	  kernel.
	  kernel.
	  If in doubt, say "N"
	  If in doubt, say "N"


config DEBUG_WX
	bool "Warn on W+X mappings at boot"
	select ARM_PTDUMP_CORE
	---help---
		Generate a warning if any W+X mappings are found at boot.

		This is useful for discovering cases where the kernel is leaving
		W+X mappings after applying NX, as such mappings are a security risk.

		Look for a message in dmesg output like this:

			arm/mm: Checked W+X mappings: passed, no W+X pages found.

		or like this, if the check failed:

			arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.

		Note that even if the check fails, your kernel is possibly
		still fine, as W+X mappings are not a security hole in
		themselves, what they do is that they make the exploitation
		of other unfixed kernel bugs easier.

		There is no runtime or memory usage effect of this option
		once the kernel has booted up - it's a one time check.

		If in doubt, say "Y".

# RMK wants arm kernels compiled with frame pointers or stack unwinding.
# RMK wants arm kernels compiled with frame pointers or stack unwinding.
# If you know what you are doing and are willing to live without stack
# If you know what you are doing and are willing to live without stack
# traces, you can get a slightly smaller kernel by setting this option to
# traces, you can get a slightly smaller kernel by setting this option to
+4 −2
Original line number Original line Diff line number Diff line
@@ -115,9 +115,11 @@ ifeq ($(CONFIG_ARM_UNWIND),y)
CFLAGS_ABI	+=-funwind-tables
CFLAGS_ABI	+=-funwind-tables
endif
endif


# Accept old syntax despite ".syntax unified"
AFLAGS_NOWARN	:=$(call as-option,-Wa$(comma)-mno-warn-deprecated,-Wa$(comma)-W)

ifeq ($(CONFIG_THUMB2_KERNEL),y)
ifeq ($(CONFIG_THUMB2_KERNEL),y)
AFLAGS_AUTOIT	:=$(call as-option,-Wa$(comma)-mimplicit-it=always,-Wa$(comma)-mauto-it)
AFLAGS_AUTOIT	:=$(call as-option,-Wa$(comma)-mimplicit-it=always,-Wa$(comma)-mauto-it)
AFLAGS_NOWARN	:=$(call as-option,-Wa$(comma)-mno-warn-deprecated,-Wa$(comma)-W)
CFLAGS_ISA	:=-mthumb $(AFLAGS_AUTOIT) $(AFLAGS_NOWARN)
CFLAGS_ISA	:=-mthumb $(AFLAGS_AUTOIT) $(AFLAGS_NOWARN)
AFLAGS_ISA	:=$(CFLAGS_ISA) -Wa$(comma)-mthumb
AFLAGS_ISA	:=$(CFLAGS_ISA) -Wa$(comma)-mthumb
# Work around buggy relocation from gas if requested:
# Work around buggy relocation from gas if requested:
@@ -125,7 +127,7 @@ ifeq ($(CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11),y)
KBUILD_CFLAGS_MODULE	+=-fno-optimize-sibling-calls
KBUILD_CFLAGS_MODULE	+=-fno-optimize-sibling-calls
endif
endif
else
else
CFLAGS_ISA	:=$(call cc-option,-marm,)
CFLAGS_ISA	:=$(call cc-option,-marm,) $(AFLAGS_NOWARN)
AFLAGS_ISA	:=$(CFLAGS_ISA)
AFLAGS_ISA	:=$(CFLAGS_ISA)
endif
endif


+0 −5
Original line number Original line Diff line number Diff line
@@ -130,8 +130,3 @@ void *memset(void *s, int c, size_t count)
		*xs++ = c;
		*xs++ = c;
	return s;
	return s;
}
}

void __memzero(void *s, size_t count)
{
	memset(s, 0, count);
}
Loading