[PATCH v2 0/3] scsi: add runtime PM workaround for SD cardreaders

From: Martin Kepplinger
Date: Tue Jan 12 2021 - 04:35:36 EST


revision history
----------------
v2:
* move module parameter to sd
* add Documentation

v1:
https://lore.kernel.org/linux-scsi/20210111152029.28426-1-martin.kepplinger@xxxxxxx/T/#t



hi,

In short: there are SD cardreaders that send MEDIA_CHANGED on
runtime resume. We cannot use runtime PM with these devices as
I/O basically always fails. I'd like to discuss a way to fix this
or at least allow users to work around this problem:

For the full background, the discussion started in June 2020 here:
https://lore.kernel.org/linux-scsi/20200623111018.31954-1-martin.kepplinger@xxxxxxx/

and I sent the first of these patches in August, as a reference:
https://lore.kernel.org/linux-scsi/20200824190400.12339-1-martin.kepplinger@xxxxxxx/
so this is where I'm following up on.

I'm not sure whether maintaining an in-kernel quirk for specific devices
makes sense so here I suggest adding a userspace knob. This way there's at
least a chance to use runtime PM for sd cardreaders that send MEDIA_CHANGED.

I'd appreciate any feedback.

Martin Kepplinger (3):
scsi: add expecting_media_change flag to error path
scsi: sd: add ignore_resume_medium_changed disk setting
scsi: sd: Documentation: describe ignore_resume_medium_changed

Documentation/scsi/sd-parameters.rst | 14 ++++++++
drivers/scsi/scsi_error.c | 36 +++++++++++++++++---
drivers/scsi/sd.c | 50 +++++++++++++++++++++++++++-
drivers/scsi/sd.h | 1 +
include/scsi/scsi_device.h | 1 +
5 files changed, 96 insertions(+), 6 deletions(-)

--
2.20.1