lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Tue, 9 Jan 2024 10:05:57 +0100
From: Alexander Gordeev <agordeev@...ux.ibm.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
        linux-kernel@...r.kernel.org, linux-s390@...r.kernel.org
Subject: [GIT PULL] s390 updates for the 6.8 merge window

Hello Linus,

Please pull s390 changes for 6.8 merge window.

Please note three KVM commits that were agreed to go via s390 tree
as part of a floating-point unit (FPU) rework:
	KVM: s390: fix setting of fpc register
	KVM: s390: use READ_ONCE() to read fpc register value
	KVM: s390: remove superfluous save_fpu_regs() call

Also, there is revert of defconfigs update that is upstream already
as commit 3d940bb18183 ("s390: update defconfigs"):
	Revert "s390: update defconfigs"
	s390: update defconfigs

Thank you,
Alexander

The following changes since commit 98b1cc82c4affc16f5598d4fa14b1858671b2263:

  Linux 6.7-rc2 (2023-11-19 15:02:14 -0800)

are available in the Git repository at:

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

for you to fetch changes up to b2b97a62f055dd638f7f02087331a8380d8f139a:

  Revert "s390: update defconfigs" (2023-12-18 10:58:58 +0100)

----------------------------------------------------------------
s390 updates for 6.8 merge window

- Add machine variable capacity information to /proc/sysinfo.

- Limit the waste of page tables and always align vmalloc area size
  and base address on segment boundary.

- Fix a memory leak when an attempt to register interruption sub class
  (ISC) for the adjunct-processor (AP) guest failed.

- Reset response code AP_RESPONSE_INVALID_GISA to understandable
  by guest AP_RESPONSE_INVALID_ADDRESS in response to a failed
  interruption sub class (ISC) registration attempt.

- Improve reaction to adjunct-processor (AP) AP_RESPONSE_OTHERWISE_CHANGED
  response code when enabling interrupts on behalf of a guest.

- Fix incorrect sysfs 'status' attribute of adjunct-processor (AP) queue
  device bound to the vfio_ap device driver when the mediated device is
  attached to a guest, but the queue device is not passed through.

- Rework struct ap_card to hold the whole adjunct-processor (AP) card
  hardware information. As result, all the ugly bit checks are replaced
  by simple evaluations of the required bit fields.

- Improve handling of some weird scenarios between service element (SE)
  host and SE guest with adjunct-processor (AP) pass-through support.

- Change local_ctl_set_bit() and local_ctl_clear_bit() so they return the
  previous value of the to be changed control register. This is useful if
  a bit is only changed temporarily and the previous content needs to be
  restored.

- The kernel starts with machine checks disabled and is expected to enable
  it once trap_init() is called. However the implementation allows machine
  checks early. Consistently enable it in trap_init() only.

- local_mcck_disable() and local_mcck_enable() assume that machine checks
  are always enabled. Instead implement and use local_mcck_save() and
  local_mcck_restore() to disable machine checks and restore the previous
  state.

- Modification of floating point control (FPC) register of a traced
  process using ptrace interface may lead to corruption of the FPC
  register of the tracing process. Fix this.

- kvm_arch_vcpu_ioctl_set_fpu() allows to set the floating point control
  (FPC) register in vCPU, but may lead to corruption of the FPC register
  of the host process. Fix this.

- Use READ_ONCE() to read a vCPU floating point register value from the
  memory mapped area. This avoids that, depending on code generation,
  a different value is tested for validity than the one that is used.

- Get rid of test_fp_ctl(), since it is quite subtle to use it correctly.
  Instead copy a new floating point control register value into its save
  area and test the validity of the new value when loading it.

- Remove superfluous save_fpu_regs() call.

- Remove s390 support for ARCH_WANTS_DYNAMIC_TASK_STRUCT. All machines
  provide the vector facility since many years and the need to make the
  task structure size dependent on the vector facility does not exist.

- Remove the "novx" kernel command line option, as the vector code runs
  without any problems since many years.

- Add the vector facility to the z13 architecture level set (ALS).
  All hypervisors support the vector facility since many years.
  This allows compile time optimizations of the kernel.

- Get rid of MACHINE_HAS_VX and replace it with cpu_has_vx(). As result,
  the compiled code will have less runtime checks and less code.

- Convert pgste_get_lock() and pgste_set_unlock() ASM inlines to C.

- Convert the struct subchannel spinlock from pointer to member.

----------------------------------------------------------------
Alexander Gordeev (2):
      s390/boot: always align vmalloc area on segment boundary
      Revert "s390: update defconfigs"

Anthony Krowiak (2):
      s390/vfio-ap: unpin pages on gisc registration failure
      s390/vfio-ap: set status response code to 06 on gisc registration failure

Claudio Imbrenda (1):
      s390/mm: convert pgste locking functions to C

Halil Pasic (1):
      s390/cio: make sch->lock spinlock pointer a member

Harald Freudenberger (2):
      s390/ap: store TAPQ hwinfo in struct ap_card
      s390/ap: handle outband SE bind state change

Heiko Carstens (13):
      s390/ctlreg: return old register contents when changing bits
      s390/nmi: consistently enable machine checks in trap_init()
      s390/nmi: implement and use local_mcck_save() / local_mcck_restore()
      s390/ptrace: handle setting of fpc register correctly
      KVM: s390: fix setting of fpc register
      KVM: s390: use READ_ONCE() to read fpc register value
      s390/fpu: get rid of test_fp_ctl()
      KVM: s390: remove superfluous save_fpu_regs() call
      s390/fpu: remove ARCH_WANTS_DYNAMIC_TASK_STRUCT support
      s390/fpu: remove "novx" option
      s390/als: add vector facility to z13 architecture level set
      s390/fpu: get rid of MACHINE_HAS_VX
      s390: update defconfigs

Tony Krowiak (2):
      s390/vfio-ap: improve reaction to response code 07 from PQAP(AQIC) command
      s390/vfio-ap: fix sysfs status attribute for AP queue devices

Vasily Gorbik (1):
      s390/sysinfo: add variable capacity information

 arch/s390/Kconfig                    |   1 -
 arch/s390/boot/ipl_parm.c            |   2 +-
 arch/s390/boot/startup.c             |   3 +-
 arch/s390/crypto/chacha-glue.c       |   2 +-
 arch/s390/include/asm/ap.h           |  21 ++--
 arch/s390/include/asm/ctlreg.h       |  24 +++--
 arch/s390/include/asm/fpu/api.h      |  35 +++---
 arch/s390/include/asm/fpu/internal.h |  10 +-
 arch/s390/include/asm/processor.h    |  34 ++++--
 arch/s390/include/asm/setup.h        |   2 -
 arch/s390/include/asm/sysinfo.h      |   4 +
 arch/s390/kernel/compat_signal.c     |  16 ++-
 arch/s390/kernel/crash_dump.c        |   5 +-
 arch/s390/kernel/early.c             |  12 +--
 arch/s390/kernel/fpu.c               |  12 +--
 arch/s390/kernel/machine_kexec.c     |   2 +-
 arch/s390/kernel/nmi.c               |  10 +-
 arch/s390/kernel/perf_regs.c         |   6 +-
 arch/s390/kernel/process.c           |   2 +-
 arch/s390/kernel/processor.c         |   7 +-
 arch/s390/kernel/ptrace.c            |  28 +++--
 arch/s390/kernel/setup.c             |  25 +----
 arch/s390/kernel/signal.c            |  12 +--
 arch/s390/kernel/smp.c               |   6 +-
 arch/s390/kernel/sysinfo.c           |  10 ++
 arch/s390/kernel/traps.c             |  13 ++-
 arch/s390/kernel/vmlinux.lds.S       |   1 +
 arch/s390/kvm/interrupt.c            |   2 +-
 arch/s390/kvm/kvm-s390.c             |  26 ++---
 arch/s390/lib/test_unwind.c          |   6 +-
 arch/s390/mm/pgtable.c               |  27 ++---
 arch/s390/tools/gen_facilities.c     |   1 +
 drivers/s390/cio/chsc.c              |  18 ++--
 drivers/s390/cio/chsc_sch.c          |   6 +-
 drivers/s390/cio/cio.c               |   6 +-
 drivers/s390/cio/cio.h               |   2 +-
 drivers/s390/cio/css.c               |  36 ++-----
 drivers/s390/cio/device.c            |  66 ++++++------
 drivers/s390/cio/device_pgid.c       |  12 +--
 drivers/s390/cio/eadm_sch.c          |  36 +++----
 drivers/s390/cio/vfio_ccw_drv.c      |   8 +-
 drivers/s390/cio/vfio_ccw_fsm.c      |  24 ++---
 drivers/s390/crypto/ap_bus.c         |  72 ++++++-------
 drivers/s390/crypto/ap_bus.h         |  22 +---
 drivers/s390/crypto/ap_card.c        |  18 ++--
 drivers/s390/crypto/ap_queue.c       | 200 +++++++++++++++++++++++------------
 drivers/s390/crypto/vfio_ap_ops.c    |  30 ++++--
 drivers/s390/crypto/zcrypt_api.c     |  16 +--
 drivers/s390/crypto/zcrypt_cex4.c    |  31 +++---
 lib/raid6/s390vx.uc                  |   2 +-
 50 files changed, 517 insertions(+), 455 deletions(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ