On Sun, Oct 27, 2019 at 09:22:34AM +0100, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 4.14-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 2190168aaea42c31bff7b9a967e7b045f07df095 Mon Sep 17 00:00:00 2001 From: Steffen Maier maier@linux.ibm.com Date: Tue, 1 Oct 2019 12:49:49 +0200 Subject: [PATCH] scsi: zfcp: fix reaction on bit error threshold notification
On excessive bit errors for the FCP channel ingress fibre path, the channel notifies us. Previously, we only emitted a kernel message and a trace record. Since performance can become suboptimal with I/O timeouts due to bit errors, we now stop using an FCP device by default on channel notification so multipath on top can timely failover to other paths. A new module parameter zfcp.ber_stop can be used to get zfcp old behavior.
User explanation of new kernel message:
- Description:
- The FCP channel reported that its bit error threshold has been exceeded.
- These errors might result from a problem with the physical components
- of the local fibre link into the FCP channel.
- The problem might be damage or malfunction of the cable or
- cable connection between the FCP channel and
- the adjacent fabric switch port or the point-to-point peer.
- Find details about the errors in the HBA trace for the FCP device.
- The zfcp device driver closed down the FCP device
- to limit the performance impact from possible I/O command timeouts.
- User action:
- Check for problems on the local fibre link, ensure that fibre optics are
- clean and functional, and all cables are properly plugged.
- After the repair action, you can manually recover the FCP device by
- writing "0" into its "failed" sysfs attribute.
- If recovery through sysfs is not possible, set the CHPID of the device
- offline and back online on the service element.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Cc: stable@vger.kernel.org #2.6.30+ Link: https://lore.kernel.org/r/20191001104949.42810-1-maier@linux.ibm.com Reviewed-by: Jens Remus jremus@linux.ibm.com Reviewed-by: Benjamin Block bblock@linux.ibm.com Signed-off-by: Steffen Maier maier@linux.ibm.com Signed-off-by: Martin K. Petersen martin.petersen@oracle.com
Just context conflicts because of missing 75492a51568b9 ("s390/scsi: Convert timers to use timer_setup()"). I've fixed it up and queued for 4.14, 4.9, and 4.4.