Skip to content

Commit c2d94c5

Browse files
committed
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 fixes and kexec-file-load from Martin Schwidefsky: "After the common code kexec patches went in via Andrew we can now push the architecture parts to implement the kexec-file-load system call. Plus a few more bug fixes and cleanups, this includes an update to the default configurations" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: s390/signal: cleanup uapi struct sigaction s390: rename default_defconfig to debug_defconfig s390: remove gcov defconfig s390: update defconfig s390: add support for IBM z14 Model ZR1 s390: remove couple of duplicate includes s390/boot: remove unused COMPILE_VERSION and ccflags-y s390/nospec: include cpu.h s390/decompressor: Ignore file vmlinux.bin.full s390/kexec_file: add generated files to .gitignore s390/Kconfig: Move kexec config options to "Processor type and features" s390/kexec_file: Add ELF loader s390/kexec_file: Add crash support to image loader s390/kexec_file: Add image loader s390/kexec_file: Add kexec_file_load system call s390/kexec_file: Add purgatory s390/kexec_file: Prepare setup.h for kexec_file_load s390/smsgiucv: disable SMSG on module unload s390/sclp: avoid potential usage of uninitialized value
2 parents 87ef120 + fae7649 commit c2d94c5

30 files changed

+998
-716
lines changed

arch/s390/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ obj-$(CONFIG_APPLDATA_BASE) += appldata/
88
obj-y += net/
99
obj-$(CONFIG_PCI) += pci/
1010
obj-$(CONFIG_NUMA) += numa/
11+
obj-$(CONFIG_ARCH_HAS_KEXEC_PURGATORY) += purgatory/

arch/s390/Kconfig

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,6 @@ config PGSTE
4747
config ARCH_SUPPORTS_DEBUG_PAGEALLOC
4848
def_bool y
4949

50-
config KEXEC
51-
def_bool y
52-
select KEXEC_CORE
53-
5450
config AUDIT_ARCH
5551
def_bool y
5652

@@ -290,12 +286,12 @@ config MARCH_Z13
290286
older machines.
291287

292288
config MARCH_Z14
293-
bool "IBM z14"
289+
bool "IBM z14 ZR1 and z14"
294290
select HAVE_MARCH_Z14_FEATURES
295291
help
296-
Select this to enable optimizations for IBM z14 (3906 series).
297-
The kernel will be slightly faster but will not work on older
298-
machines.
292+
Select this to enable optimizations for IBM z14 ZR1 and z14 (3907
293+
and 3906 series). The kernel will be slightly faster but will not
294+
work on older machines.
299295

300296
endchoice
301297

@@ -525,6 +521,26 @@ source kernel/Kconfig.preempt
525521

526522
source kernel/Kconfig.hz
527523

524+
config KEXEC
525+
def_bool y
526+
select KEXEC_CORE
527+
528+
config KEXEC_FILE
529+
bool "kexec file based system call"
530+
select KEXEC_CORE
531+
select BUILD_BIN2C
532+
depends on CRYPTO
533+
depends on CRYPTO_SHA256
534+
depends on CRYPTO_SHA256_S390
535+
help
536+
Enable the kexec file based system call. In contrast to the normal
537+
kexec system call this system call takes file descriptors for the
538+
kernel and initramfs as arguments.
539+
540+
config ARCH_HAS_KEXEC_PURGATORY
541+
def_bool y
542+
depends on KEXEC_FILE
543+
528544
config ARCH_RANDOM
529545
def_bool y
530546
prompt "s390 architectural random number generation API"

arch/s390/boot/Makefile

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,6 @@
33
# Makefile for the linux s390-specific parts of the memory manager.
44
#
55

6-
COMPILE_VERSION := __linux_compile_version_id__`hostname | \
7-
tr -c '[0-9A-Za-z]' '_'`__`date | \
8-
tr -c '[0-9A-Za-z]' '_'`_t
9-
10-
ccflags-y := -DCOMPILE_VERSION=$(COMPILE_VERSION) -gstabs -I.
11-
126
targets := image
137
targets += bzImage
148
subdir- := compressed

arch/s390/boot/compressed/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
sizes.h
22
vmlinux
33
vmlinux.lds
4+
vmlinux.bin.full

arch/s390/configs/default_defconfig renamed to arch/s390/configs/debug_defconfig

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ CONFIG_CPUSETS=y
2424
CONFIG_CGROUP_DEVICE=y
2525
CONFIG_CGROUP_CPUACCT=y
2626
CONFIG_CGROUP_PERF=y
27-
CONFIG_CHECKPOINT_RESTORE=y
2827
CONFIG_NAMESPACES=y
2928
CONFIG_USER_NS=y
3029
CONFIG_SCHED_AUTOGROUP=y
3130
CONFIG_BLK_DEV_INITRD=y
3231
CONFIG_EXPERT=y
3332
# CONFIG_SYSFS_SYSCALL is not set
33+
CONFIG_CHECKPOINT_RESTORE=y
3434
CONFIG_BPF_SYSCALL=y
3535
CONFIG_USERFAULTFD=y
3636
# CONFIG_COMPAT_BRK is not set
@@ -59,10 +59,11 @@ CONFIG_CFQ_GROUP_IOSCHED=y
5959
CONFIG_DEFAULT_DEADLINE=y
6060
CONFIG_LIVEPATCH=y
6161
CONFIG_TUNE_ZEC12=y
62-
CONFIG_NR_CPUS=256
62+
CONFIG_NR_CPUS=512
6363
CONFIG_NUMA=y
6464
CONFIG_PREEMPT=y
6565
CONFIG_HZ_100=y
66+
CONFIG_KEXEC_FILE=y
6667
CONFIG_MEMORY_HOTPLUG=y
6768
CONFIG_MEMORY_HOTREMOVE=y
6869
CONFIG_KSM=y
@@ -305,7 +306,6 @@ CONFIG_IP6_NF_SECURITY=m
305306
CONFIG_IP6_NF_NAT=m
306307
CONFIG_IP6_NF_TARGET_MASQUERADE=m
307308
CONFIG_NF_TABLES_BRIDGE=m
308-
CONFIG_NET_SCTPPROBE=m
309309
CONFIG_RDS=m
310310
CONFIG_RDS_RDMA=m
311311
CONFIG_RDS_TCP=m
@@ -364,11 +364,11 @@ CONFIG_NET_ACT_SIMP=m
364364
CONFIG_NET_ACT_SKBEDIT=m
365365
CONFIG_NET_ACT_CSUM=m
366366
CONFIG_DNS_RESOLVER=y
367+
CONFIG_OPENVSWITCH=m
367368
CONFIG_NETLINK_DIAG=m
368369
CONFIG_CGROUP_NET_PRIO=y
369370
CONFIG_BPF_JIT=y
370371
CONFIG_NET_PKTGEN=m
371-
CONFIG_NET_TCPPROBE=m
372372
CONFIG_DEVTMPFS=y
373373
CONFIG_DMA_CMA=y
374374
CONFIG_CMA_SIZE_MBYTES=0
@@ -380,9 +380,9 @@ CONFIG_BLK_DEV_DRBD=m
380380
CONFIG_BLK_DEV_NBD=m
381381
CONFIG_BLK_DEV_RAM=y
382382
CONFIG_BLK_DEV_RAM_SIZE=32768
383-
CONFIG_BLK_DEV_RAM_DAX=y
384383
CONFIG_VIRTIO_BLK=y
385384
CONFIG_BLK_DEV_RBD=m
385+
CONFIG_BLK_DEV_NVME=m
386386
CONFIG_ENCLOSURE_SERVICES=m
387387
CONFIG_GENWQE=m
388388
CONFIG_RAID_ATTRS=m
@@ -461,6 +461,7 @@ CONFIG_PPTP=m
461461
CONFIG_PPPOL2TP=m
462462
CONFIG_PPP_ASYNC=m
463463
CONFIG_PPP_SYNC_TTY=m
464+
CONFIG_INPUT_EVDEV=y
464465
# CONFIG_INPUT_KEYBOARD is not set
465466
# CONFIG_INPUT_MOUSE is not set
466467
# CONFIG_SERIO is not set
@@ -474,6 +475,9 @@ CONFIG_WATCHDOG=y
474475
CONFIG_WATCHDOG_NOWAYOUT=y
475476
CONFIG_SOFT_WATCHDOG=m
476477
CONFIG_DIAG288_WATCHDOG=m
478+
CONFIG_DRM=y
479+
CONFIG_DRM_VIRTIO_GPU=y
480+
CONFIG_FRAMEBUFFER_CONSOLE=y
477481
# CONFIG_HID is not set
478482
# CONFIG_USB_SUPPORT is not set
479483
CONFIG_INFINIBAND=m
@@ -482,7 +486,9 @@ CONFIG_MLX4_INFINIBAND=m
482486
CONFIG_MLX5_INFINIBAND=m
483487
CONFIG_VFIO=m
484488
CONFIG_VFIO_PCI=m
489+
CONFIG_VIRTIO_PCI=m
485490
CONFIG_VIRTIO_BALLOON=m
491+
CONFIG_VIRTIO_INPUT=y
486492
CONFIG_EXT4_FS=y
487493
CONFIG_EXT4_FS_POSIX_ACL=y
488494
CONFIG_EXT4_FS_SECURITY=y
@@ -641,6 +647,8 @@ CONFIG_ATOMIC64_SELFTEST=y
641647
CONFIG_TEST_BPF=m
642648
CONFIG_BUG_ON_DATA_CORRUPTION=y
643649
CONFIG_S390_PTDUMP=y
650+
CONFIG_PERSISTENT_KEYRINGS=y
651+
CONFIG_BIG_KEYS=y
644652
CONFIG_ENCRYPTED_KEYS=m
645653
CONFIG_SECURITY=y
646654
CONFIG_SECURITY_NETWORK=y
@@ -649,17 +657,20 @@ CONFIG_SECURITY_SELINUX=y
649657
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
650658
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0
651659
CONFIG_SECURITY_SELINUX_DISABLE=y
660+
CONFIG_INTEGRITY_SIGNATURE=y
661+
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
652662
CONFIG_IMA=y
663+
CONFIG_IMA_DEFAULT_HASH_SHA256=y
664+
CONFIG_IMA_WRITE_POLICY=y
653665
CONFIG_IMA_APPRAISE=y
654-
CONFIG_CRYPTO_RSA=m
655666
CONFIG_CRYPTO_DH=m
656667
CONFIG_CRYPTO_ECDH=m
657668
CONFIG_CRYPTO_USER=m
669+
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
658670
CONFIG_CRYPTO_PCRYPT=m
659671
CONFIG_CRYPTO_CRYPTD=m
660672
CONFIG_CRYPTO_MCRYPTD=m
661673
CONFIG_CRYPTO_TEST=m
662-
CONFIG_CRYPTO_GCM=m
663674
CONFIG_CRYPTO_CHACHA20POLY1305=m
664675
CONFIG_CRYPTO_LRW=m
665676
CONFIG_CRYPTO_PCBC=m
@@ -707,9 +718,8 @@ CONFIG_CRYPTO_DES_S390=m
707718
CONFIG_CRYPTO_AES_S390=m
708719
CONFIG_CRYPTO_GHASH_S390=m
709720
CONFIG_CRYPTO_CRC32_S390=y
710-
CONFIG_ASYMMETRIC_KEY_TYPE=y
711-
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m
712-
CONFIG_X509_CERTIFICATE_PARSER=m
721+
CONFIG_PKCS7_MESSAGE_PARSER=y
722+
CONFIG_SYSTEM_TRUSTED_KEYRING=y
713723
CONFIG_CRC7=m
714724
CONFIG_CRC8=m
715725
CONFIG_RANDOM32_SELFTEST=y

0 commit comments

Comments
 (0)