s390 updates for the 5.14 merge window

- Rework inline asm to get rid of error prone "register asm" constructs,
  which are problematic especially when code instrumentation is enabled. In
  particular introduce and use register pair union to allocate even/odd
  register pairs. Unfortunately this breaks compatibility with older
  clang compilers and minimum clang version for s390 has been raised to 13.
  https://lore.kernel.org/linux-next/CAK7LNARuSmPCEy-ak0erPrPTgZdGVypBROFhtw+=3spoGoYsyw@mail.gmail.com/

- Fix gcc 11 warnings, which triggered various minor reworks all over
  the code.

- Add zstd kernel image compression support.

- Rework boot CPU lowcore handling.

- De-duplicate and move kernel memory layout setup logic earlier.

- Few fixes in preparation for FORTIFY_SOURCE performing compile-time
  and run-time field bounds checking for mem functions.

- Remove broken and unused power management support leftovers in s390
  drivers.

- Disable stack-protector for decompressor and purgatory to fix buildroot
  build.

- Fix vt220 sclp console name to match the char device name.

- Enable HAVE_IOREMAP_PROT and add zpci_set_irq()/zpci_clear_irq() in
  zPCI code.

- Remove some implausible WARN_ON_ONCEs and remove arch specific counter
  transaction call backs in favour of default transaction handling in
  perf code.

- Extend/add new uevents for online/config/mode state changes of
  AP card / queue device in zcrypt.

- Minor entry and ccwgroup code improvements.

- Other small various fixes and improvements all over the code.
s390/dasd: use register pair instead of register asm

Using register asm statements has been proven to be very error prone,
especially when using code instrumentation where gcc may add function
calls, which clobbers register contents in an unexpected way.

Therefore get rid of register asm statement in dasd code, even though
there is currently nothing wrong with it. This way we know for sure
that the above mentioned bug class won't be introduced here.

Reviewed-by: Stefan Haberland <sth@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
1 file changed