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

Commit d60a540a authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull s390 updates from Heiko Carstens:
 "Since Martin is on vacation you get the s390 pull request for the
  v4.15 merge window this time from me.

  Besides a lot of cleanups and bug fixes these are the most important
  changes:

   - a new regset for runtime instrumentation registers

   - hardware accelerated AES-GCM support for the aes_s390 module

   - support for the new CEX6S crypto cards

   - support for FORTIFY_SOURCE

   - addition of missing z13 and new z14 instructions to the in-kernel
     disassembler

   - generate opcode tables for the in-kernel disassembler out of a
     simple text file instead of having to manually maintain those
     tables

   - fast memset16, memset32 and memset64 implementations

   - removal of named saved segment support

   - hardware counter support for z14

   - queued spinlocks and queued rwlocks implementations for s390

   - use the stack_depth tracking feature for s390 BPF JIT

   - a new s390_sthyi system call which emulates the sthyi (store
     hypervisor information) instruction

   - removal of the old KVM virtio transport

   - an s390 specific CPU alternatives implementation which is used in
     the new spinlock code"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (88 commits)
  MAINTAINERS: add virtio-ccw.h to virtio/s390 section
  s390/noexec: execute kexec datamover without DAT
  s390: fix transactional execution control register handling
  s390/bpf: take advantage of stack_depth tracking
  s390: simplify transactional execution elf hwcap handling
  s390/zcrypt: Rework struct ap_qact_ap_info.
  s390/virtio: remove unused header file kvm_virtio.h
  s390: avoid undefined behaviour
  s390/disassembler: generate opcode tables from text file
  s390/disassembler: remove insn_to_mnemonic()
  s390/dasd: avoid calling do_gettimeofday()
  s390: vfio-ccw: Do not attempt to free no-op, test and tic cda.
  s390: remove named saved segment support
  s390/archrandom: Reconsider s390 arch random implementation
  s390/pci: do not require AIS facility
  s390/qdio: sanitize put_indicator
  s390/qdio: use atomic_cmpxchg
  s390/nmi: avoid using long-displacement facility
  s390: pass endianness info to sparse
  s390/decompressor: remove informational messages
  ...
parents 2101dd64 364a5607
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2548,6 +2548,9 @@

	noalign		[KNL,ARM]

	noaltinstr	[S390] Disables alternative instructions patching
			(CPU alternatives feature).

	noapic		[SMP,APIC] Tells the kernel to not make use of any
			IOAPICs that may be present in the system.

+1 −0
Original line number Diff line number Diff line
@@ -14335,6 +14335,7 @@ L: virtualization@lists.linux-foundation.org
L:	kvm@vger.kernel.org
S:	Supported
F:	drivers/s390/virtio/
F:	arch/s390/include/uapi/asm/virtio-ccw.h

VIRTIO GPU DRIVER
M:	David Airlie <airlied@linux.ie>
+17 −26
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ config S390
	select ARCH_BINFMT_ELF_STATE
	select ARCH_HAS_DEVMEM_IS_ALLOWED
	select ARCH_HAS_ELF_RANDOMIZE
	select ARCH_HAS_FORTIFY_SOURCE
	select ARCH_HAS_GCOV_PROFILE_ALL
	select ARCH_HAS_GIGANTIC_PAGE if (MEMORY_ISOLATION && COMPACTION) || CMA
	select ARCH_HAS_KCOV
@@ -143,7 +144,6 @@ config S390
	select HAVE_DYNAMIC_FTRACE
	select HAVE_DYNAMIC_FTRACE_WITH_REGS
	select HAVE_EFFICIENT_UNALIGNED_ACCESS
	select HAVE_EXIT_THREAD
	select HAVE_FTRACE_MCOUNT_RECORD
	select HAVE_FUNCTION_GRAPH_TRACER
	select HAVE_FUNCTION_TRACER
@@ -538,6 +538,22 @@ config ARCH_RANDOM

	  If unsure, say Y.

config ALTERNATIVES
	def_bool y
	prompt "Patch optimized instructions for running CPU type"
	help
	  When enabled the kernel code is compiled with additional
	  alternative instructions blocks optimized for newer CPU types.
	  These alternative instructions blocks are patched at kernel boot
	  time when running CPU supports them. This mechanism is used to
	  optimize some critical code paths (i.e. spinlocks) for newer CPUs
	  even if kernel is build to support older machine generations.

	  This mechanism could be disabled by appending "noaltinstr"
	  option to the kernel command line.

	  If unsure, say Y.

endmenu

menu "Memory setup"
@@ -809,18 +825,6 @@ config PFAULT
	  Everybody who wants to run Linux under VM != VM4.2 should select
	  this option.

config SHARED_KERNEL
	bool "VM shared kernel support"
	depends on !JUMP_LABEL
	help
	  Select this option, if you want to share the text segment of the
	  Linux kernel between different VM guests. This reduces memory
	  usage with lots of guests but greatly increases kernel size.
	  Also if a kernel was IPL'ed from a shared segment the kexec system
	  call will not work.
	  You should only select this option if you know what you are
	  doing and want to exploit this feature.

config CMM
	def_tristate n
	prompt "Cooperative memory management"
@@ -930,17 +934,4 @@ config S390_GUEST
	  Select this option if you want to run the kernel as a guest under
	  the KVM hypervisor.

config S390_GUEST_OLD_TRANSPORT
	def_bool y
	prompt "Guest support for old s390 virtio transport (DEPRECATED)"
	depends on S390_GUEST
	help
	  Enable this option to add support for the old s390-virtio
	  transport (i.e. virtio devices NOT based on virtio-ccw). This
	  type of virtio devices is only available on the experimental
	  kuli userspace or with old (< 2.6) qemu. If you are running
	  with a modern version of qemu (which supports virtio-ccw since
	  1.4 and uses it by default since version 2.4), you probably won't
	  need this.

endmenu
+2 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ KBUILD_CFLAGS += -m64
KBUILD_AFLAGS	+= -m64
UTS_MACHINE	:= s390x
STACK_SIZE	:= 16384
CHECKFLAGS	+= -D__s390__ -D__s390x__
CHECKFLAGS	+= -D__s390__ -D__s390x__ -mbig-endian

export LD_BFD

@@ -133,6 +133,7 @@ archclean:

archprepare:
	$(Q)$(MAKE) $(build)=$(tools) include/generated/facilities.h
	$(Q)$(MAKE) $(build)=$(tools) include/generated/dis.h

# Don't use tabs in echo arguments
define archhelp
+1 −1
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ targets += vmlinux.bin.xz vmlinux.bin.lzma vmlinux.bin.lzo vmlinux.bin.lz4
targets += misc.o piggy.o sizes.h head.o

KBUILD_CFLAGS := -m64 -D__KERNEL__ -O2
KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING -D__NO_FORTIFY
KBUILD_CFLAGS += $(cflags-y) -fno-delete-null-pointer-checks -msoft-float
KBUILD_CFLAGS += $(call cc-option,-mpacked-stack)
KBUILD_CFLAGS += $(call cc-option,-ffreestanding)
Loading