[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260123185252.8148Ac6-hca@linux.ibm.com>
Date: Fri, 23 Jan 2026 19:52:52 +0100
From: Heiko Carstens <hca@...ux.ibm.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>, linux-s390@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [GIT PULL] s390 fixes for 6.19-rc7
Hi Linus,
please pull some s390 fixes for 6.19-rc7.
FWIW, I don't expect another s390 pull request before 6.19 is released.
Thanks,
Heiko
The following changes since commit 9448598b22c50c8a5bb77a9103e2d49f134c9578:
Linux 6.19-rc2 (2025-12-21 15:52:04 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git tags/s390-6.19-4
for you to fetch changes up to ddc6cbef3ef10359b5640b4ee810a520edc73586:
s390/boot/vmlinux.lds.S: Ensure bzImage ends with SecureBoot trailer (2026-01-22 15:15:50 +0100)
----------------------------------------------------------------
s390 fixes for 6.19-rc7
- Add $(DISABLE_KSTACK_ERASE) to vdso compile flags to fix compile errors
with old gcc versions
- Fix path to s390 chacha implementation in vdso selftests, after vdso64
has been renamed to vdso
- Fix off-by-one bug in APQN limit calculation
- Discard .modinfo section from decompressor image to fix SecureBoot
----------------------------------------------------------------
Alexander Egorenkov (1):
s390/boot/vmlinux.lds.S: Ensure bzImage ends with SecureBoot trailer
Harald Freudenberger (1):
s390/ap: Fix wrong APQN fill calculation
Heiko Carstens (1):
s390/vdso: Disable kstack erase
Thomas Weißschuh (1):
selftests: vDSO: getrandom: Fix path to s390 chacha implementation
arch/s390/boot/vmlinux.lds.S | 17 +++++++++--------
arch/s390/kernel/vdso/Makefile | 2 +-
drivers/s390/crypto/ap_card.c | 2 +-
drivers/s390/crypto/ap_queue.c | 2 +-
tools/testing/selftests/vDSO/vgetrandom-chacha.S | 2 +-
5 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/arch/s390/boot/vmlinux.lds.S b/arch/s390/boot/vmlinux.lds.S
index 50988022f9ea..070bc18babd0 100644
--- a/arch/s390/boot/vmlinux.lds.S
+++ b/arch/s390/boot/vmlinux.lds.S
@@ -137,6 +137,15 @@ SECTIONS
}
_end = .;
+ /* Sections to be discarded */
+ /DISCARD/ : {
+ COMMON_DISCARDS
+ *(.eh_frame)
+ *(*__ksymtab*)
+ *(___kcrctab*)
+ *(.modinfo)
+ }
+
DWARF_DEBUG
ELF_DETAILS
@@ -161,12 +170,4 @@ SECTIONS
*(.rela.*) *(.rela_*)
}
ASSERT(SIZEOF(.rela.dyn) == 0, "Unexpected run-time relocations (.rela) detected!")
-
- /* Sections to be discarded */
- /DISCARD/ : {
- COMMON_DISCARDS
- *(.eh_frame)
- *(*__ksymtab*)
- *(___kcrctab*)
- }
}
diff --git a/arch/s390/kernel/vdso/Makefile b/arch/s390/kernel/vdso/Makefile
index 2fa12d4ac106..fece5d975eaf 100644
--- a/arch/s390/kernel/vdso/Makefile
+++ b/arch/s390/kernel/vdso/Makefile
@@ -28,7 +28,7 @@ KBUILD_CFLAGS_VDSO := $(filter-out -mno-pic-data-is-text-relative,$(KBUILD_CFLAG
KBUILD_CFLAGS_VDSO := $(filter-out -munaligned-symbols,$(KBUILD_CFLAGS_VDSO))
KBUILD_CFLAGS_VDSO := $(filter-out -fno-asynchronous-unwind-tables,$(KBUILD_CFLAGS_VDSO))
KBUILD_CFLAGS_VDSO += -fPIC -fno-common -fno-builtin -fasynchronous-unwind-tables
-KBUILD_CFLAGS_VDSO += -fno-stack-protector
+KBUILD_CFLAGS_VDSO += -fno-stack-protector $(DISABLE_KSTACK_ERASE)
ldflags-y := -shared -soname=linux-vdso.so.1 \
--hash-style=both --build-id=sha1 -T
diff --git a/drivers/s390/crypto/ap_card.c b/drivers/s390/crypto/ap_card.c
index 8102c8134c49..8b0ad6f582ec 100644
--- a/drivers/s390/crypto/ap_card.c
+++ b/drivers/s390/crypto/ap_card.c
@@ -43,7 +43,7 @@ static ssize_t depth_show(struct device *dev, struct device_attribute *attr,
{
struct ap_card *ac = to_ap_card(dev);
- return sysfs_emit(buf, "%d\n", ac->hwinfo.qd);
+ return sysfs_emit(buf, "%d\n", ac->hwinfo.qd + 1);
}
static DEVICE_ATTR_RO(depth);
diff --git a/drivers/s390/crypto/ap_queue.c b/drivers/s390/crypto/ap_queue.c
index 4a32c1e19a1e..a80ab87cad62 100644
--- a/drivers/s390/crypto/ap_queue.c
+++ b/drivers/s390/crypto/ap_queue.c
@@ -285,7 +285,7 @@ static enum ap_sm_wait ap_sm_write(struct ap_queue *aq)
list_move_tail(&ap_msg->list, &aq->pendingq);
aq->requestq_count--;
aq->pendingq_count++;
- if (aq->queue_count < aq->card->hwinfo.qd) {
+ if (aq->queue_count < aq->card->hwinfo.qd + 1) {
aq->sm_state = AP_SM_STATE_WORKING;
return AP_SM_WAIT_AGAIN;
}
diff --git a/tools/testing/selftests/vDSO/vgetrandom-chacha.S b/tools/testing/selftests/vDSO/vgetrandom-chacha.S
index a4a82e1c28a9..8c3cbf4dfd6a 100644
--- a/tools/testing/selftests/vDSO/vgetrandom-chacha.S
+++ b/tools/testing/selftests/vDSO/vgetrandom-chacha.S
@@ -14,7 +14,7 @@
#elif defined(__riscv) && __riscv_xlen == 64
#include "../../../../arch/riscv/kernel/vdso/vgetrandom-chacha.S"
#elif defined(__s390x__)
-#include "../../../../arch/s390/kernel/vdso64/vgetrandom-chacha.S"
+#include "../../../../arch/s390/kernel/vdso/vgetrandom-chacha.S"
#elif defined(__x86_64__)
#include "../../../../arch/x86/entry/vdso/vgetrandom-chacha.S"
#endif
Powered by blists - more mailing lists