[GIT PULL] s390 updates for 6.14 merge window

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

please pull s390 updates for the 6.14 merge window.

Thanks,
Alexander

The following changes since commit fac04efc5c793dccbd07e2d59af9f90b7fc0dca4:

  Linux 6.13-rc2 (2024-12-08 14:03:39 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git tags/s390-6.14-1

for you to fetch changes up to 26701574cee6777f867f89b4a5c667817e1ee0dd:

  s390/futex: Fix FUTEX_OP_ANDN implementation (2025-01-15 17:12:31 +0100)

----------------------------------------------------------------
s390 updates for 6.14 merge window

- Select config option KASAN_VMALLOC if KASAN is enabled

- Select config option VMAP_STACK unconditionally

- Implement arch_atomic_inc() / arch_atomic_dec() functions
  which result in a single instruction if compiled for z196
  or newer architectures

- Make layering between atomic.h and atomic_ops.h consistent

- Comment s390 preempt_count implementation

- Remove pre MARCH_HAS_Z196_FEATURES preempt count implementation

- GCC uses the number of lines of an inline assembly to calculate
  number of instructions and decide on inlining. Therefore remove
  superfluous new lines from a couple of inline assemblies.

- Provide arch_atomic_*_and_test() implementations that allow the
  compiler to generate slightly better code.

- Optimize __preempt_count_dec_and_test()

- Remove __bootdata annotations from declarations in header files

- Add missing include of <linux/smp.h> in abs_lowcore.h to provide
  declarations for get_cpu() and put_cpu() used in the code

- Fix suboptimal kernel image base when running make kasan.config

- Remove huge_pte_none() and huge_pte_none_mostly() as are identical
  to the generic variants

- Remove unused PAGE_KERNEL_EXEC, SEGMENT_KERNEL_EXEC,
  and REGION3_KERNEL_EXEC defines

- Simplify noexec page protection handling and change the page,
  segment and region3 protection definitions automatically if the
  instruction execution-protection facility is not available

- Save one instruction and prefer EXRL instruction over EX in
  string, xor_*(), amode31 and other functions

- Create /dev/diag misc device to fetch diagnose specific
  information from the kernel and provide it to userspace

- Retrieve electrical power readings using DIAGNOSE 0x324 ioctl

- Make ccw_device_get_ciw() consistent and use array indices
  instead of pointer arithmetic

* s390/qdio: Move memory alloc/pointer arithmetic for slib and sl into one place

- The sysfs core now allows instances of 'struct bin_attribute' to be
  moved into read-only memory. Make use of that in s390 code

- Add missing TLB range adjustment in pud_free_tlb()

- Improve topology setup by adding early polarization detection

- Fix length checks in codepage_convert() function

- The generic bitops implementation is nearly identical to the s390 one.
  Switch to the generic variant and decrease a bit the kernel image size

- Provide an optimized arch_test_bit() implementation which makes use of
  flag output constraint. This generates slightly better code

- Provide memory topology information obtanied with DIAGNOSE 0x310
  using ioctl.

- Various other small improvements, fixes, and cleanups

These changes were added with a merge of  'pci-device-recovery' branch

- Add PCI error recovery status mechanism

- Simplify and document debug_next_entry() logic

- Split private data allocation and freeing out of debug file
  open() and close() operations

- Add debug_dump() function that gets a textual representation
  of a debug info (e.g. PCI recovery hardware error logs)

- Add formatted content of pci_debug_msg_id to the PCI report

----------------------------------------------------------------
Alexander Gordeev (2):
      Merge branch 'pci-device-recovery' into features
      s390/tlb: Add missing TLB range adjustment

Benjamin Block (3):
      s390/qdio: Rename feature flag aif_osa to aif_qdio
      s390/cio: Use array indices instead of pointer arithmetic
      s390/qdio: Move memory alloc/pointer arithmetic for slib and sl into one place

Heiko Carstens (18):
      s390/Kconfig: Select KASAN_VMALLOC if KASAN is enabled
      s390/Kconfig: Select VMAP_STACK unconditionally
      s390/setup: Cleanup stack_alloc() and stack_free()
      s390/atomic: Implement arch_atomic_inc() / arch_atomic_dec()
      s390/atomic: Consistent layering between atomic.h and atomic_ops.h
      s390/preempt: Add comments
      s390/preempt: Remove special pre MARCH_HAS_Z196_FEATURES implementation
      s390/preempt: Adjust coding style
      s390: Remove superfluous new lines from inline assemblies
      s390/atomic: Provide arch_atomic_*_and_test() implementations
      s390/preempt: Optimize __preempt_count_dec_and_test()
      s390/mm/hugetlbfs: Remove huge_pte_none() / huge_pte_none_mostly()
      s390/mm: Remove incorrect comment
      s390/mm: Remove unused PAGE_KERNEL_EXEC and friends
      s390/mm: Simplify noexec page protection handling
      s390/bitops: Switch to generic bitops
      s390/bitops: Provide optimized arch_test_bit()
      s390/futex: Fix FUTEX_OP_ANDN implementation

Mete Durlu (2):
      s390/topology: Improve topology detection
      s390/diag: Add memory topology information via diag310

Niklas Schnelle (6):
      s390/pci: Report PCI error recovery results via SCLP
      s390/debug: Simplify and document debug_next_entry() logic
      s390/debug: Split private data alloc/free out of file operations
      s390/debug: Add debug_dump() to write debug view to a string buffer
      s390/debug: Add a reverse mode for debug_dump()
      s390/pci: Add pci_msg debug view to PCI report

Sumanth Korikkar (3):
      s390/diag: Create misc device /dev/diag
      s390/diag324: Retrieve power readings via diag 0x324
      s390/diag: Move diag.c to diag specific folder

Sven Schnelle (7):
      s390/lib: Use exrl instead of ex in string functions
      s390/lib: Use exrl instead of ex in xor functions
      s390/stackleak: Use exrl instead of ex in __stackleak_poison()
      s390/amode31: Use exrl instead of ex
      s390/ebcdic: Use exrl instead of ex
      s390/ebcdic: Fix length check in codepage_convert()
      s390/ebcdic: Fix length decrement in codepage_convert()

Thomas Weißschuh (5):
      s390/crypto/cpacf: Constify 'struct bin_attribute'
      s390/ipl: Constify 'struct bin_attribute'
      s390/pci: Constify 'struct bin_attribute'
      s390/sclp: Constify 'struct bin_attribute'
      s390/pkey: Constify 'struct bin_attribute'

Vasily Gorbik (3):
      s390: Remove __bootdata annotations from declarations
      s390/abs_lowcore: Include linux/smp.h for get_cpu() and put_cpu()
      s390: Add KERNEL_IMAGE_BASE to kasan.config

 arch/s390/Kconfig                   |  28 +---
 arch/s390/Makefile                  |   9 --
 arch/s390/boot/boot.h               |   1 -
 arch/s390/boot/startup.c            |  13 +-
 arch/s390/boot/vmem.c               |  20 +--
 arch/s390/configs/kasan.config      |   2 +-
 arch/s390/include/asm/abs_lowcore.h |   4 +-
 arch/s390/include/asm/atomic.h      |  68 ++++++++-
 arch/s390/include/asm/atomic_ops.h  | 121 ++++++++++++----
 arch/s390/include/asm/bitops.h      | 201 ++++----------------------
 arch/s390/include/asm/checksum.h    |   2 +-
 arch/s390/include/asm/css_chars.h   |   2 +-
 arch/s390/include/asm/debug.h       |   7 +
 arch/s390/include/asm/diag.h        |   2 +
 arch/s390/include/asm/ebcdic.h      |  16 +--
 arch/s390/include/asm/fpu-insn.h    |  14 +-
 arch/s390/include/asm/futex.h       |   2 +-
 arch/s390/include/asm/hugetlb.h     |  23 +--
 arch/s390/include/asm/page-states.h |   3 +-
 arch/s390/include/asm/pgtable.h     | 126 ++++++++--------
 arch/s390/include/asm/preempt.h     |  83 ++++-------
 arch/s390/include/asm/processor.h   |   3 +-
 arch/s390/include/asm/sclp.h        |  35 +++++
 arch/s390/include/asm/tlb.h         |   2 +-
 arch/s390/include/uapi/asm/diag.h   |  32 +++++
 arch/s390/kernel/Makefile           |   3 +-
 arch/s390/kernel/abs_lowcore.c      |   1 +
 arch/s390/kernel/cpacf.c            |  36 ++---
 arch/s390/kernel/debug.c            | 241 +++++++++++++++++++++++++------
 arch/s390/kernel/diag/Makefile      |   1 +
 arch/s390/kernel/{ => diag}/diag.c  |   4 +-
 arch/s390/kernel/diag/diag310.c     | 276 ++++++++++++++++++++++++++++++++++++
 arch/s390/kernel/diag/diag324.c     | 224 +++++++++++++++++++++++++++++
 arch/s390/kernel/diag/diag_ioctl.h  |  14 ++
 arch/s390/kernel/diag/diag_misc.c   |  63 ++++++++
 arch/s390/kernel/entry.S            |  20 +--
 arch/s390/kernel/ipl.c              | 142 +++++++++----------
 arch/s390/kernel/os_info.c          |   1 +
 arch/s390/kernel/setup.c            |  33 ++---
 arch/s390/kernel/text_amode31.S     |   3 +-
 arch/s390/kernel/topology.c         |  11 ++
 arch/s390/kernel/vdso64/Makefile    |   2 +-
 arch/s390/kernel/vmcore_info.c      |   3 +-
 arch/s390/lib/mem.S                 |  15 +-
 arch/s390/lib/xor.c                 |  61 ++++----
 arch/s390/mm/init.c                 |   9 ++
 arch/s390/mm/maccess.c              |   1 +
 arch/s390/mm/mmap.c                 |  42 +++---
 arch/s390/mm/pageattr.c             |   6 -
 arch/s390/mm/pgtable.c              |   2 -
 arch/s390/mm/vmem.c                 |   8 --
 arch/s390/pci/Makefile              |   2 +-
 arch/s390/pci/pci_event.c           |  21 ++-
 arch/s390/pci/pci_report.c          | 158 +++++++++++++++++++++
 arch/s390/pci/pci_report.h          |  16 +++
 arch/s390/pci/pci_sysfs.c           |  12 +-
 drivers/s390/char/sclp.h            |  18 +--
 drivers/s390/char/sclp_config.c     |   4 +-
 drivers/s390/char/sclp_early.c      |   3 +
 drivers/s390/char/sclp_pci.c        |  19 ---
 drivers/s390/char/sclp_sd.c         |   4 +-
 drivers/s390/cio/device_ops.c       |   2 +-
 drivers/s390/cio/qdio.h             |   9 +-
 drivers/s390/cio/qdio_setup.c       |  21 ++-
 drivers/s390/crypto/pkey_sysfs.c    | 126 ++++++++--------
 65 files changed, 1665 insertions(+), 791 deletions(-)
 create mode 100644 arch/s390/include/uapi/asm/diag.h
 create mode 100644 arch/s390/kernel/diag/Makefile
 rename arch/s390/kernel/{ => diag}/diag.c (98%)
 create mode 100644 arch/s390/kernel/diag/diag310.c
 create mode 100644 arch/s390/kernel/diag/diag324.c
 create mode 100644 arch/s390/kernel/diag/diag_ioctl.h
 create mode 100644 arch/s390/kernel/diag/diag_misc.c
 create mode 100644 arch/s390/pci/pci_report.c
 create mode 100644 arch/s390/pci/pci_report.h




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux