[GIT PULL] s390 updates for 5.17 merge window

From: Heiko Carstens
Date: Mon Jan 10 2022 - 01:07:42 EST


Hi Linus,

please pull s390 update for 5.17 merge window.

Besides all the small improvements and cleanups the most notable part
is the fast vector/SIMD implementation of the ChaCha20 stream cipher,
which is an adaptation of Andy Polyakov's code for the kernel.

Thanks,
Heiko

The following changes since commit 0fcfb00b28c0b7884635dacf38e46d60bf3d4eb1:

Linux 5.16-rc4 (2021-12-05 14:08:22 -0800)

are available in the Git repository at:

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

for you to fetch changes up to 0704a8586f75663cf30a283bbeeca09eb4e60a07:

s390/dasd: use default_groups in kobj_type (2022-01-08 17:44:05 +0100)

----------------------------------------------------------------
s390 updates for 5.17 merge window

- add fast vector/SIMD implementation of the ChaCha20 stream cipher,
which mainly adapts Andy Polyakov's code for the kernel

- add status attribute to AP queue device so users can easily figure
out its status

- fix race in page table release code, and and lots of documentation

- remove uevent suppress from cio device driver, since it turned out
that it generated more problems than it solved problems

- quite a lot of virtual vs physical address confusion fixes

- various other small improvements and cleanups all over the place

----------------------------------------------------------------
Alexander Egorenkov (1):
s390/sclp: release SCLP early buffer after kernel initialization

Alexander Gordeev (4):
s390/nmi: disable interrupts on extended save area update
s390/mm: fix 2KB pgtable release race
s390/mm: better annotate 2KB pagetable fragments handling
s390/mm: check 2KB-fragment page on release

Eric W. Biederman (1):
s390/exit: remove dead reference to do_exit from copy_thread

Greg Kroah-Hartman (2):
s390/sclp_sd: use default_groups in kobj_type
s390/dasd: use default_groups in kobj_type

Guo Ren (1):
s390: remove unused TASK_SIZE_OF

Heiko Carstens (14):
s390/vmcp: use page_to_virt instead of page_to_phys
s390/nmi: add missing __pa/__va address conversion of extended save area
s390/mm: add missing phys_to_virt translation to page table dumper
s390/diag: use pfn_to_phys() instead of open coding
s390/cmm: add missing virt_to_phys() conversion
s390/pgalloc: add virt/phys address handling to base asce functions
s390/pgalloc: use pointers instead of unsigned long values
s390/ap: add missing virt_to_phys address conversion
s390/sclp: fix memblock_phys_free() vs memblock_free() confusion
s390/smp: fix memblock_phys_free() vs memblock_free() confusion
s390/uv: fix memblock virtual vs physical address confusion
s390/disassembler: update opcode table
s390/crypto: fix compile error for ChaCha20 module
s390/crash_dump: fix virtual vs physical address handling

Juergen Christ (1):
s390/zcrypt: CCA control CPRB sending

Julian Wiedmann (9):
s390/qdio: remove QDIO_SBAL_SIZE macro
s390/qdio: improve handling of CIWs
s390/qdio: avoid allocating the qdio_irq with GFP_DMA
s390/qdio: clean up access to queue in qdio_handle_activate_check()
s390/qdio: clarify handler logic for qdio_handle_activate_check()
s390/qdio: split qdio_inspect_queue()
s390/qdio: split do_QDIO()
s390/qdio: remove unneeded sanity check in qdio_do_sqbs()
s390/qdio: clarify logical vs absolute in QIB's kerneldoc

Niklas Schnelle (3):
s390/pci: use phys_to_virt() for AIBVs/DIBVs
s390/pci: use physical addresses in DMA tables
s390/pci: simplify __pciwb_mio() inline asm

Patrick Steuer (1):
s390/crypto: add SIMD implementation for ChaCha20

Tony Krowiak (1):
s390/vfio-ap: add status attribute to AP queue device's sysfs dir

Vineeth Vijayan (1):
s390/cio: remove uevent suppress from cio driver

arch/s390/configs/debug_defconfig | 1 +
arch/s390/configs/defconfig | 1 +
arch/s390/crypto/Makefile | 2 +
arch/s390/crypto/chacha-glue.c | 100 +++++
arch/s390/crypto/chacha-s390.S | 907 ++++++++++++++++++++++++++++++++++++++
arch/s390/crypto/chacha-s390.h | 14 +
arch/s390/include/asm/ap.h | 4 +-
arch/s390/include/asm/diag.h | 4 +-
arch/s390/include/asm/nmi.h | 6 +-
arch/s390/include/asm/pci_dma.h | 29 +-
arch/s390/include/asm/processor.h | 3 +-
arch/s390/include/asm/qdio.h | 25 +-
arch/s390/include/asm/vx-insn.h | 117 +++++
arch/s390/kernel/crash_dump.c | 2 +-
arch/s390/kernel/dis.c | 1 +
arch/s390/kernel/machine_kexec.c | 2 +-
arch/s390/kernel/nmi.c | 43 +-
arch/s390/kernel/process.c | 1 -
arch/s390/kernel/setup.c | 2 +-
arch/s390/kernel/smp.c | 35 +-
arch/s390/kernel/uv.c | 10 +-
arch/s390/mm/cmm.c | 2 +-
arch/s390/mm/fault.c | 8 +-
arch/s390/mm/init.c | 3 +
arch/s390/mm/pgalloc.c | 244 +++++++---
arch/s390/pci/pci.c | 2 +-
arch/s390/pci/pci_dma.c | 26 +-
arch/s390/pci/pci_insn.c | 5 +-
arch/s390/pci/pci_irq.c | 6 +-
arch/s390/tools/opcodes.txt | 3 +-
drivers/crypto/Kconfig | 12 +
drivers/iommu/s390-iommu.c | 10 +-
drivers/s390/block/dasd_devmap.c | 3 +-
drivers/s390/char/sclp_early.c | 2 +-
drivers/s390/char/sclp_sd.c | 3 +-
drivers/s390/char/vmcp.c | 4 +-
drivers/s390/cio/chsc_sch.c | 5 -
drivers/s390/cio/css.c | 19 -
drivers/s390/cio/device.c | 20 +-
drivers/s390/cio/eadm_sch.c | 5 -
drivers/s390/cio/qdio.h | 7 +-
drivers/s390/cio/qdio_main.c | 210 +++++----
drivers/s390/cio/qdio_setup.c | 22 +-
drivers/s390/cio/vfio_ccw_drv.c | 5 -
drivers/s390/crypto/vfio_ap_drv.c | 79 +++-
drivers/s390/crypto/zcrypt_api.c | 7 +-
drivers/s390/net/qeth_core_main.c | 36 +-
drivers/s390/scsi/zfcp_qdio.c | 19 +-
48 files changed, 1703 insertions(+), 373 deletions(-)
create mode 100644 arch/s390/crypto/chacha-glue.c
create mode 100644 arch/s390/crypto/chacha-s390.S
create mode 100644 arch/s390/crypto/chacha-s390.h