ACK: [SRU][F][PATCH 0/1] s390x/pci: s390_pci_mmio_write/read fail when MIO instructions are available (LP: 1874055)

Kelsey Skunberg kelsey.skunberg at canonical.com
Wed Jun 3 23:17:18 UTC 2020


On 2020-05-29 11:36:13 , frank.heimes at canonical.com wrote:
> Buglink: https://bugs.launchpad.net/bugs/1874055
> 
> SRU Justification:
> 
> [Impact]
> 
> * Code that is using s390_pci_mmio_write/read system calls on a z15 (that comes with enhanced PCI load/store instructions), fails with "Unable to handle kernel pointer dereference in virtual kernel address space".
> 
> * This issue happens if enablement for z15 PCI enhancements is in place and where customers run workloads which access PCI adapters from user space, like RoCE/RDMA.
> 
> * To solve this, the system call implementation needs to be improved to execute the enhanced PCI load/store instructions on behalf of the user space application,
>   making use of the mappings into its virtual address space.
> 
> [Fix]
> 
> * f058599e22d59e594e5aae1dc10560568d8f4a8b f058599e22d5 "s390/pci: Fix s390_mmio_read/write with MIO"
> 
> [Test Case]
> 
> * Setting up a z15 with at least one PCI card (like RoCE) using an operating system that includes support and enablement for z15 (line 20.04).
> 
> * Install the rdma tools: sudo apt install ibverbs-providers ibverbs-utils
> 
> * Verify you have some RDMA devices (requires ConnectX adapter)
>   $ ibv_devices
>   device node GUID
>   ------ ----------------
>   mlx5_0 98039b0300c682b4
> 
> * Verify MIO instructions are enabled for the device
>   $ cat /sys/bus/pci/devices/0000\:00\:00.0/mio_enabled
>   1
> 
> * Try to run an RDMA application from user space, e.g. ibv_rc_pingpong
>   server side:
>   ibv_rc_pingpong -d mlx5_0 -g 0 &
>   client side:
>   ibv_rc_pingpong -d mlx5_0 -g 0 localhost
> 
> * Verify whether the kernel crashes or not.
> 
> * Verification needs to be done by IBM on z15 hardware.
> 
> [Regression Potential]
> 
> * There is some regression potential with having code changes in the zPCI sub-system.
> 
> * It could be that PCI hardware get harmed, but PCI hardware is not as wide-spread on s390x than ccw hardware components.
> 
> * Only z15 hardware is affected - no other s390x hardware that is supported by Ubuntu.
> 
> * However, the zPCI system is s390x only and the patch was accepted upstream with v5.7-rc7 and Linus commented:
>   "And none of the fixes look like there's anything particularly scary going on. Most of it is very small, and the slightly larger patches aren't huge either and are well-contained (the two slightly larger patches are to s390 and rxrpc - and even those patches aren't really all _that_ big)"
> 
> [Other]
> 
> * Since the fix/patch got upstream accepted with kernel v5.7-rc7, it's already in groovy, hence this SRU is for focal only.
> 
> Niklas Schnelle (1):
>   From: Niklas Schnelle <schnelle at linux.ibm.com>
> 
>  arch/s390/include/asm/pci_io.h |  10 +-
>  arch/s390/pci/pci_mmio.c       | 213 ++++++++++++++++++++++++++++++++-
>  2 files changed, 219 insertions(+), 4 deletions(-)
> 
> -- 
> 2.25.1
> 
>

Acked-by: Kelsey Skunberg <kelsey.skunberg at canonical.com>
 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



More information about the kernel-team mailing list