[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z5t8i_dUC6KbOO8P@tuxmaker.boeblingen.de.ibm.com>
Date: Thu, 30 Jan 2025 14:20:11 +0100
From: Alexander Gordeev <agordeev@...ux.ibm.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Vasily Gorbik <gor@...ux.ibm.com>, Heiko Carstens <hca@...ux.ibm.com>,
linux-s390@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [GIT PULL] more s390 updates for 6.14 merge window
Hi Linus,
please pull more s390 updates for the 6.14 merge window.
There is a trivial conflict that was resolved in linux-next [1] in:
arch/s390/Kconfig
between commit:
008071917dfc ("s390/crc32: expose CRC32 functions through lib")
from your tree and commit:
3bcc8a1af581 ("s390/sclp: Initialize sclp subsystem via arch_cpu_finalize=
_init()")
from the s390 tree:
diff --cc arch/s390/Kconfig
index 6e9545d8b0c7,f49ca2b485f6..000000000000
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@@ -72,7 -78,7 +78,8 @@@ config S39
select ARCH_ENABLE_MEMORY_HOTPLUG if SPARSEMEM
select ARCH_ENABLE_MEMORY_HOTREMOVE
select ARCH_ENABLE_SPLIT_PMD_PTLOCK if PGTABLE_LEVELS > 2
+ select ARCH_HAS_CPU_FINALIZE_INIT
+ select ARCH_HAS_CRC32
select ARCH_HAS_CURRENT_STACK_POINTER
select ARCH_HAS_DEBUG_VIRTUAL
select ARCH_HAS_DEBUG_VM_PGTABLE
1. https://lore.kernel.org/linux-next/20250129115932.7950d88d@canb.auug.org.au/
Thanks,
Alexander
The following changes since commit 26701574cee6777f867f89b4a5c667817e1ee0dd:
s390/futex: Fix FUTEX_OP_ANDN implementation (2025-01-15 17:12:31 +0100)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git tags/s390-6.14-2
for you to fetch changes up to 87f017d0792befa83722b99cb21f9c8f574cd71d:
s390/vmlogrdr: Use array instead of string initializer (2025-01-29 13:44:21 +0100)
----------------------------------------------------------------
more s390 updates for 6.14 merge window
- The rework that uncoupled physical and virtual address spaces
inadvertently prevented KASAN shadow mappings from using large
pages. Restore large page mappings for KASAN shadows
- Add decompressor routine physmem_alloc() that may fail,
unlike physmem_alloc_or_die(). This allows callers to
implement fallback paths
- Allow falling back from large pages to smaller pages (1MB or
4KB) if the allocation of 2GB pages in the decompressor can
not be fulfilled
- Add to the decompressor boot print support of "%%" format
string, width and padding hadnling, length modifiers and
decimal conversion specifiers
- Add to the decompressor message severity levels similar to
kernel ones. Support command-line options that control
console output verbosity
- Replaces boot_printk() calls with appropriate loglevel-
specific helpers such as boot_emerg(), boot_warn(), and
boot_debug().
- Collect all boot messages into a ring buffer independent
of the current log level. This is particularly useful for
early crash analysis
- If 'earlyprintk' command line parameter is not specified, store
decompressor boot messages in a ring buffer to be printed later
by the kernel, once the console driver is registered
- Add 'bootdebug' command line parameter to enable printing of
decompressor debug messages when needed. That parameters allows
message supressing and filtering
- Dump boot messages on a decompressor crash, but only if
'bootdebug' command line parameter is enabled
- When CONFIG_PRINTK_TIME is enabled, add timestamps to boot
messages in the same format as regular printk()
- Dump physical memory tracking information on boot:
online ranges, reserved areas and vmem allocations
- Dump virtual memory layout and randomization details
- Improve decompression error reporting and dump the message
ring buffer in case the boot failed and system halted
- Add an exception handler which handles exceptions when FPU
control register is attempted to be set to an invalid value.
Remove '.fixup' section as result of this change
- Use 'A', 'O', and 'R' inline assembly format flags, which
allows recent Clang compilers to generate better FPU code
- Rework uaccess code so it reads better and generates more
efficient code
- Cleanup futex inline assembly code
- Disable KMSAN instrumention for futex inline assemblies, which
contain dereferenced user pointers. Otherwise, shadows for the
user pointers would be accessed
- PFs which are not initially configured but in standby create
only a single-function PCI domain. If they are configured later
on, sibling PFs and their child VFs will not be added to their
PCI domain breaking SR-IOV expectations. Fix that by allowing
initially configured but in standby PFs create multi-function
PCI domains
- Add '-std=gnu11' to decompressor and purgatory CFLAGS to avoid
compile errors caused by kernel's own definitions of 'bool',
'false', and 'true' conflicting with the C23 reserved keywords
- Fix sclp subsystem failure when a sclp console is not present
- Fix misuse of non-NULL terminated strings in vmlogrdr driver
- Various other small improvements, cleanups and fixes
----------------------------------------------------------------
Heiko Carstens (24):
s390/fpu: Add fpc exception handler / remove fixup section again
s390/extable: Replace open-coded sfpc inline assembly with fpu_sfpc()
s390: Rename GCC_ASM_FLAG_OUTPUT_BROKEN to CC_ASM_FLAG_OUTPUT_BROKEN
s390: Introduce CC_HAS_ASM_AOR_FORMAT_FLAGS Kconfig option
s390/fpu: Use CONFIG_CC_HAS_ASM_AOR_FORMAT_FLAGS instead of CONFIG_CC_IS_CLANG
s390/extable: Rename EX_TABLE_UA_STORE to EX_TABLE_UA_FAULT
s390/uaccess: Implement __get_kernel_nofault()/__put_kernel_nofault() with mvc
s390/uaccess: Use asm goto for __mvc_kernel_nofault()
s390/uaccess: Move put_user() / __put_user() close to put_user() asm code
s390/uaccess: Remove __put_user_fn()/__get_user_fn() wrappers
s390/uaccess: Cleanup noinstr __put_user()/__get_user() inline assembly constraints
s390/uaccess: Replace EX_TABLE_UA_LOAD_MEM exception handling
s390/uaccess: Remove usage of the oac specifier
s390/uaccess: Use asm goto for put_user()/get_user()
s390/uaccess: Remove INLINE_COPY_FROM_USER and INLINE_COPY_TO_USER
s390/futex: Generate futex atomic op functions
s390/futex: Cleanup futex_atomic_cmpxchg_inatomic()
s390/uaccess: Rename get_put_user_noinstr_attributes to uaccess_kmsan_or_inline
s390/futex: Avoid KMSAN instrumention for user pointers
s390/bitops: Use correct constraint for arch_test_bit() inline assembly
s390/tools: Use array instead of string initializer
s390/sclp: Initialize sclp subsystem via arch_cpu_finalize_init()
s390/vmlogrdr: Use internal_name for error messages
s390/vmlogrdr: Use array instead of string initializer
Nathan Chancellor (1):
s390: Add '-std=gnu11' to decompressor and purgatory CFLAGS
Niklas Schnelle (1):
s390/pci: Fix SR-IOV for PFs initially in standby
Vasily Gorbik (27):
s390/mm: Allow large pages for KASAN shadow mapping
s390/boot: Rename physmem_alloc_top_down() to physmem_alloc_or_die()
s390/boot: Add physmem_alloc()
s390/boot: Allow KASAN mapping to fallback to small pages
s390/boot: Add %% support to boot_printk()
s390/boot: Add length modifiers to boot_printk()
s390/boot: Add field width and padding handling to boot_printk()
s390/boot: Add decimal conversion specifiers to boot_printk()
s390/boot: Add support for boot messages loglevels
s390/boot: Replace boot_printk() with loglevel-specific helpers
s390/boot: Use decimal format specifiers in boot messages
s390/boot: Introduce ring buffer for boot messages
s390/boot: Make boot_printk() return int
s390/boot: Defer boot messages when earlyprintk is not enabled
s390/boot: Add bootdebug option to control debug messages
s390/boot: Add prefix filtering to bootdebug messages
s390/boot: Dump message ring buffer on crash with bootdebug
s390/boot: Add timestamps to early boot messages
s390: Use pr_info for "KernelAddressSanitizer initialized" message
s390/boot: Add physmem tracking debug support
s390/boot: Move command line parsing earlier
s390/boot: Add vmem debugging support
s390/boot: Add startup debugging support
s390/boot: Improve decompression error reporting
s390: Optimize __pa/__va when RANDOMIZE_IDENTITY_BASE is off
s390/ipl_report: Remove unused 'size' variable
s390/vmem: Fix null-pointer-arithmetic warning in vmem_map_init()
arch/s390/Kconfig | 9 +-
arch/s390/Makefile | 2 +-
arch/s390/boot/als.c | 10 +-
arch/s390/boot/boot.h | 26 +-
arch/s390/boot/decompressor.c | 12 +-
arch/s390/boot/ipl_parm.c | 20 +-
arch/s390/boot/ipl_report.c | 3 +-
arch/s390/boot/kaslr.c | 4 +-
arch/s390/boot/pgm_check_info.c | 53 ++--
arch/s390/boot/physmem_info.c | 103 +++++--
arch/s390/boot/printk.c | 224 ++++++++++++--
arch/s390/boot/startup.c | 47 ++-
arch/s390/boot/vmem.c | 135 +++++++--
arch/s390/include/asm/asm-extable.h | 14 +-
arch/s390/include/asm/asm.h | 2 +-
arch/s390/include/asm/bitops.h | 2 +-
arch/s390/include/asm/boot_data.h | 51 ++++
arch/s390/include/asm/fpu-insn.h | 199 ++++++-------
arch/s390/include/asm/futex.h | 107 ++++---
arch/s390/include/asm/page.h | 4 +
arch/s390/include/asm/physmem_info.h | 4 +-
arch/s390/include/asm/sclp.h | 1 +
arch/s390/include/asm/uaccess.h | 562 +++++++++++++++++++----------------
arch/s390/kernel/early.c | 3 +-
arch/s390/kernel/setup.c | 37 ++-
arch/s390/kernel/vmlinux.lds.S | 1 -
arch/s390/lib/uaccess.c | 90 ------
arch/s390/mm/extable.c | 30 +-
arch/s390/mm/vmem.c | 2 +-
arch/s390/pci/pci_bus.c | 1 -
arch/s390/purgatory/Makefile | 2 +-
arch/s390/tools/gen_opcode_table.c | 27 +-
drivers/s390/char/sclp.c | 12 +-
drivers/s390/char/vmlogrdr.c | 8 +-
34 files changed, 1124 insertions(+), 683 deletions(-)
Powered by blists - more mailing lists