FAILED: patch "[PATCH] scsi: core: Do not retry I/Os during depopulation" failed to apply to 5.15-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 5.15-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 <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.15.y
git checkout FETCH_HEAD
git cherry-pick -x 9ff7c383b8ac0c482a1da7989f703406d78445c6
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2025021013-spendable-stranger-885b@gregkh' --subject-prefix 'PATCH 5.15.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 9ff7c383b8ac0c482a1da7989f703406d78445c6 Mon Sep 17 00:00:00 2001
From: Igor Pylypiv <[email protected]>
Date: Fri, 31 Jan 2025 10:44:07 -0800
Subject: [PATCH] scsi: core: Do not retry I/Os during depopulation
Fail I/Os instead of retry to prevent user space processes from being blocked on the I/O completion for several minutes.
Retrying I/Os during "depopulation in progress" or "depopulation restore in progress" results in a continuous retry loop until the depopulation completes or until the I/O retry loop is aborted due to a timeout by the scsi_cmd_runtime_exceeced().
Depopulation is slow and can take 24+ hours to complete on 20+ TB HDDs. Most I/Os in the depopulation retry loop end up taking several minutes before returning the failure to user space.
drivers/scsi/scsi_lib.c +7 -2
@@ -872,13 +872,18 @@ static void scsi_io_completion_action(struct scsi_cmnd *cmd, int result)case 0x1a :/* start stop unit in progress */ case 0x1b :/* sanitize in progress */ case 0x1d :/* configuration in progress */ -case 0x24 :/* depopulation in progress */ -case 0x25 :/* depopulation restore in progress */ action =ACTION_DELAYED_RETRY ;break ;case 0x0a :/* ALUA state transition */ action =ACTION_DELAYED_REPREP ;break ; +/* +* Depopulation might take many hours, +* thus it is not worthwhile to retry. +*/ +case 0x24 :/* depopulation in progress */ +case 0x25 :/* depopulation restore in progress */ + fallthrough;default : action =ACTION_FAIL ;break ;