From: "Ewan D. Milne" <emilne@redhat.com>
To: linux-scsi@vger.kernel.org
Subject: [PATCH v2 0/8] [SCSI] Enhanced sense and Unit Attention handling
Date: Fri, 1 Feb 2013 12:53:07 -0500 [thread overview]
Message-ID: <1359741195-2641-1-git-send-email-emilne@redhat.com> (raw)
From: "Ewan D. Milne" <emilne@redhat.com>
This patch set adds changes to the SCSI mid-layer, sysfs and scsi_debug
to provide enhanced support for Unit Attention conditions, as well as
detection of reported sense data overflow conditions and some changes
to sense data processing. It also adds a uevent when the reported
capacity changes on an sd device.
There was some discussion about this a couple of years ago on the linux-scsi
mailing list: http://marc.info/?l=linux-scsi&m=129702506514742&w=2
Although one approach is to send all SCSI sense data to a userspace daemon
for processing, this patch set does not take that approach due to the
difficulty in reliably delivering all of the data. An interesting UA
condition might not be delivered due to a flood of media errors, for example.
The mechanism used is to flag when certain UA ASC/ASCQ codes are received
that report asynchronous changes to the storage device configuration.
An appropriate uevent is then generated for the scsi_device or scsi_target
object. An aggregation mechanism is used to avoid generating uevents at
too high a rate, and to coalesce multiple UAs reported by LUNs on the
same target for a REPORTED LUNS DATA HAS CHANGED sense code.
The changes are (mostly) enabled by a new kernel config option
CONFIG_SCSI_ENHANCED_UA. If this config option is not used, no new
uevents are generated. There are some changes to kernel logging messages
if CONFIG_SCSI_ENHANCED_UA is enabled, because the existing messages
explicitly stated that the kernel did not do anything with the information.
Note that checkpatch is reporting errors on patch 6/8 relating to macros
in scsi_sysfs.c -- I believe these errors are incorrect and have sent a
message to the checkpatch maintainer. The macros were derived from
existing ones already in the file.
Some changes have been made to this patch set since an earlier version
was sent out with RFC:
- Remove patch 1/9 "Detect overflow of sense data buffer"
Some scsi_debug changes in this patch were moved to patch 7/8
- Corrected Kconfig help text
- Change name of "sdev_evt_thread" to "sdev_evt_work"
- Change name of "starget_evt_thread" to "starget_evt_work"
- Pull code out of scsi_check_sense() that handles UAs into
an exported function so that drivers can report conditions
received asynchronously
Thanks to everyone for the comments on this patch series.
Ewan D. Milne (8):
[SCSI] Generate uevent on sd capacity change
[SCSI] Add a kernel config option for enhanced Unit Attention support
[SCSI] Rename scsi_evt_xxx to sdev_evt_xxx and scsi_event to
sdev_event
[SCSI] Add support for scsi_target events
[SCSI] Generate uevents for certain Unit Attention codes
[SCSI] Add sysfs support for enhanced Unit Attention handling
[SCSI] Add sense and Unit Attention generation to scsi_debug
[SCSI] Streamline detection of FM/EOM/ILI status
drivers/scsi/Kconfig | 12 +++
drivers/scsi/scsi_debug.c | 138 ++++++++++++++++++++++++++++++
drivers/scsi/scsi_error.c | 203 ++++++++++++++++++++++++++++++++++++++++-----
drivers/scsi/scsi_lib.c | 180 +++++++++++++++++++++++++++++++++++++---
drivers/scsi/scsi_priv.h | 10 ++-
drivers/scsi/scsi_scan.c | 54 ++++++------
drivers/scsi/scsi_sysfs.c | 148 ++++++++++++++++++++++++++++++---
drivers/scsi/sd.c | 9 ++
include/scsi/scsi_cmnd.h | 4 +
include/scsi/scsi_device.h | 64 +++++++++++++-
include/scsi/scsi_eh.h | 8 ++
11 files changed, 750 insertions(+), 80 deletions(-)
--
1.7.11.7
next reply other threads:[~2013-02-01 17:53 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-01 17:53 Ewan D. Milne [this message]
2013-02-01 17:53 ` [PATCH v2 1/8] [SCSI] Generate uevent on sd capacity change Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 2/8] [SCSI] Add a kernel config option for enhanced Unit Attention support Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 3/8] [SCSI] Rename scsi_evt_xxx to sdev_evt_xxx and scsi_event to sdev_event Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 4/8] [SCSI] Add support for scsi_target events Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 5/8] [SCSI] Generate uevents for certain Unit Attention codes Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 6/8] [SCSI] Add sysfs support for enhanced Unit Attention handling Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 7/8] [SCSI] Add sense and Unit Attention generation to scsi_debug Ewan D. Milne
2013-02-01 17:53 ` [PATCH v2 8/8] [SCSI] Streamline detection of FM/EOM/ILI status Ewan D. Milne
2013-04-11 21:52 ` [PATCH v2 0/8] [SCSI] Enhanced sense and Unit Attention handling Jeremy Linton
2013-04-15 14:13 ` Ewan Milne
2013-04-15 16:20 ` Jeremy Linton
2013-04-15 16:51 ` Ewan Milne
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1359741195-2641-1-git-send-email-emilne@redhat.com \
--to=emilne@redhat.com \
--cc=linux-scsi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).