Merge tag 's390-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 6 Nov 2021 21:48:06 +0000 (14:48 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 6 Nov 2021 21:48:06 +0000 (14:48 -0700)
Pull s390 updates from Vasily Gorbik:

 - Add support for ftrace with direct call and ftrace direct call
   samples.

 - Add support for kernel command lines longer than current 896 bytes
   and make its length configurable.

 - Add support for BEAR enhancement facility to improve last breaking
   event instruction tracking.

 - Add kprobes sanity checks and testcases to prevent kprobe in the mid
   of an instruction.

 - Allow concurrent access to /dev/hwc for the CPUMF users.

 - Various ftrace / jump label improvements.

 - Convert unwinder tests to KUnit.

 - Add s390_iommu_aperture kernel parameter to tweak the limits on
   concurrently usable DMA mappings.

 - Add ap.useirq AP module option which can be used to disable interrupt
   use.

 - Add add_disk() error handling support to block device drivers.

 - Drop arch specific and use generic implementation of strlcpy and
   strrchr.

 - Several __pa/__va usages fixes.

 - Various cio, crypto, pci, kernel doc and other small fixes and
   improvements all over the code.

[ Merge fixup as per https://lore.kernel.org/all/YXAqZ%2FEszRisunQw@osiris/ ]

* tag 's390-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (63 commits)
  s390: make command line configurable
  s390: support command lines longer than 896 bytes
  s390/kexec_file: move kernel image size check
  s390/pci: add s390_iommu_aperture kernel parameter
  s390/spinlock: remove incorrect kernel doc indicator
  s390/string: use generic strlcpy
  s390/string: use generic strrchr
  s390/ap: function rework based on compiler warning
  s390/cio: make ccw_device_dma_* more robust
  s390/vfio-ap: s390/crypto: fix all kernel-doc warnings
  s390/hmcdrv: fix kernel doc comments
  s390/ap: new module option ap.useirq
  s390/cpumf: Allow multiple processes to access /dev/hwc
  s390/bitops: return true/false (not 1/0) from bool functions
  s390: add support for BEAR enhancement facility
  s390: introduce nospec_uses_trampoline()
  s390: rename last_break to pgm_last_break
  s390/ptrace: add last_break member to pt_regs
  s390/sclp: sort out physical vs virtual pointers usage
  s390/setup: convert start and end initrd pointers to virtual
  ...

16 files changed:
1  2 
Documentation/admin-guide/kernel-parameters.txt
arch/s390/include/asm/pgtable.h
arch/s390/kernel/ftrace.c
arch/s390/kernel/kprobes.c
arch/s390/kernel/process.c
arch/s390/kernel/setup.c
arch/s390/kvm/interrupt.c
arch/s390/lib/string.c
arch/x86/Kconfig
drivers/s390/block/dasd_genhd.c
drivers/s390/block/dcssblk.c
drivers/s390/char/sclp_early.c
drivers/s390/crypto/vfio_ap_ops.c
samples/Kconfig
samples/Makefile
samples/ftrace/Makefile

Simple merge
Simple merge
Simple merge
Simple merge
@@@ -884,14 -878,12 +879,12 @@@ static void __init setup_randomness(voi
  {
        struct sysinfo_3_2_2 *vmms;
  
-       vmms = (struct sysinfo_3_2_2 *) memblock_phys_alloc(PAGE_SIZE,
-                                                           PAGE_SIZE);
+       vmms = memblock_alloc(PAGE_SIZE, PAGE_SIZE);
        if (!vmms)
                panic("Failed to allocate memory for sysinfo structure\n");
        if (stsi(vmms, 3, 2, 2) == 0 && vmms->count)
                add_device_randomness(&vmms->vm, sizeof(vmms->vm[0]) * vmms->count);
-       memblock_phys_free((unsigned long)vmms, PAGE_SIZE);
 -      memblock_free_ptr(vmms, PAGE_SIZE);
++      memblock_free(vmms, PAGE_SIZE);
  }
  
  /*
Simple merge
Simple merge
@@@ -192,6 -190,7 +192,8 @@@ config X8
        select HAVE_DYNAMIC_FTRACE_WITH_REGS
        select HAVE_DYNAMIC_FTRACE_WITH_ARGS    if X86_64
        select HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
+       select HAVE_SAMPLE_FTRACE_DIRECT        if X86_64
++      select HAVE_SAMPLE_FTRACE_MULTI_DIRECT  if X86_64
        select HAVE_EBPF_JIT
        select HAVE_EFFICIENT_UNALIGNED_ACCESS
        select HAVE_EISA
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc samples/Kconfig
@@@ -224,3 -224,6 +224,9 @@@ config SAMPLE_WATCH_QUEU
          sb_notify() syscalls and the KEYCTL_WATCH_KEY keyctl() function.
  
  endif # SAMPLES
+ config HAVE_SAMPLE_FTRACE_DIRECT
+       bool
++
++config HAVE_SAMPLE_FTRACE_MULTI_DIRECT
++      bool
@@@ -21,6 -21,6 +21,7 @@@ subdir-$(CONFIG_SAMPLE_TIMER)         += timer
  obj-$(CONFIG_SAMPLE_TRACE_EVENTS)     += trace_events/
  obj-$(CONFIG_SAMPLE_TRACE_PRINTK)     += trace_printk/
  obj-$(CONFIG_SAMPLE_FTRACE_DIRECT)    += ftrace/
++obj-$(CONFIG_SAMPLE_FTRACE_MULTI_DIRECT) += ftrace/
  obj-$(CONFIG_SAMPLE_TRACE_ARRAY)      += ftrace/
  subdir-$(CONFIG_SAMPLE_UHID)          += uhid
  obj-$(CONFIG_VIDEO_PCI_SKELETON)      += v4l/
@@@ -3,7 -3,6 +3,7 @@@
  obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct.o
  obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct-too.o
  obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct-modify.o
- obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct-multi.o
++obj-$(CONFIG_SAMPLE_FTRACE_MULTI_DIRECT) += ftrace-direct-multi.o
  
  CFLAGS_sample-trace-array.o := -I$(src)
  obj-$(CONFIG_SAMPLE_TRACE_ARRAY) += sample-trace-array.o