All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv3 00/10] scsi logging update: the real thing
@ 2014-11-17 13:25 Hannes Reinecke
  2014-11-17 13:25 ` [PATCH 01/10] scsi: Rename SERVICE_ACTION_IN to SERVICE_ACTION_IN_16 Hannes Reinecke
                   ` (10 more replies)
  0 siblings, 11 replies; 15+ messages in thread
From: Hannes Reinecke @ 2014-11-17 13:25 UTC (permalink / raw)
  To: James Bottomley
  Cc: Christoph Hellwig, Robert Elliott, Ewan Milne, linux-scsi,
	Hannes Reinecke

Hi all,

this is the second part of my scsi logging update, covering
CDB and sense code printing. With this patchset CDBs and
sense code bytes will be formatted on a single line
(where possible), and prefixed with the device and command
tag.

To ensure CDBs and sense code bytes are not broken up during
printk I've implemented a per-cpu buffer for formatting
messages. One can allocate a chunk from the buffer using
scsi_log_reserve_buffer() and return it via scsi_log_release_buffer().
Both function do an implicit preempt_disable() / preempt_enable()
to ensure we're not scheduled away from that cpu whilst writing
into the buffer.

With that I've been able to clean up constants.c to remove all the
#ifdef CONFIG_SCSI_CONSTANTS statements. It'll now be compiled in
conditionally if CONFIG_SCSI_CONSTANTS is set.

Additionally I've updated the SCSI command definitions to SPC-3.

Thanks go to Stephen Rostedt who suffered my annoying questions
during LPC.

Changes to v2:
- Include reviews and suggestions from Robert Elliott

Hannes Reinecke (10):
  scsi: Rename SERVICE_ACTION_IN to SERVICE_ACTION_IN_16
  scsi: Add SPC-3 command definitions
  scsi: Implement per-cpu logging buffer
  scsi: log request tag for scmd_printk()
  scsi: use external buffer for command logging
  libata: use __scsi_format_command()
  scsi: use per-cpu buffer for formatting sense
  scsi: use per-cpu buffer for formatting scsi_print_result()
  scsi: Conditionally compile in constants.c
  scsi: Do not display buffer pointers in scsi_log_send()

 block/scsi_ioctl.c                         |   2 +-
 drivers/ata/libata-eh.c                    |  17 +-
 drivers/ata/libata-scsi.c                  |   2 +-
 drivers/block/nvme-scsi.c                  |   4 +-
 drivers/scsi/Kconfig                       |   4 +-
 drivers/scsi/Makefile                      |   6 +-
 drivers/scsi/aacraid/aachba.c              |   4 +-
 drivers/scsi/aacraid/linit.c               |   2 +-
 drivers/scsi/ch.c                          |   6 +-
 drivers/scsi/constants.c                   | 250 +--------------
 drivers/scsi/gdth.c                        |   4 +-
 drivers/scsi/scsi.c                        |  11 +-
 drivers/scsi/scsi_debug.c                  |   2 +-
 drivers/scsi/scsi_logging.c                | 489 +++++++++++++++++++++++++++++
 drivers/scsi/scsi_trace.c                  |   2 +-
 drivers/scsi/sd.c                          |   9 +-
 drivers/scsi/sr_ioctl.c                    |  13 +-
 drivers/scsi/ufs/ufshcd.c                  |   6 +-
 drivers/target/target_core_alua.c          |   2 +-
 drivers/target/target_core_pr.c            |   2 +-
 drivers/target/target_core_sbc.c           |   2 +-
 drivers/usb/gadget/legacy/tcm_usb_gadget.c |   2 +-
 drivers/xen/xen-scsiback.c                 |   1 +
 include/scsi/scsi.h                        |  15 +-
 include/scsi/scsi_dbg.h                    |  74 ++++-
 include/scsi/scsi_device.h                 |  21 +-
 include/trace/events/scsi.h                |   2 +-
 include/trace/events/target.h              |   2 +-
 tools/lib/traceevent/plugin_scsi.c         |   9 +-
 29 files changed, 636 insertions(+), 329 deletions(-)
 create mode 100644 drivers/scsi/scsi_logging.c

-- 
1.8.5.2


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-01-06 18:26 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-17 13:25 [PATCHv3 00/10] scsi logging update: the real thing Hannes Reinecke
2014-11-17 13:25 ` [PATCH 01/10] scsi: Rename SERVICE_ACTION_IN to SERVICE_ACTION_IN_16 Hannes Reinecke
2014-11-17 13:25 ` [PATCH 02/10] scsi: Add SPC-3 command definitions Hannes Reinecke
2014-11-17 13:25 ` [PATCH 03/10] scsi: Implement per-cpu logging buffer Hannes Reinecke
2014-11-17 19:44   ` Douglas Gilbert
2014-11-18 15:25     ` Hannes Reinecke
2014-11-17 13:25 ` [PATCH 04/10] scsi: log request tag for scmd_printk() Hannes Reinecke
2014-11-17 13:25 ` [PATCH 05/10] scsi: use external buffer for command logging Hannes Reinecke
2014-11-17 13:25 ` [PATCH 06/10] libata: use __scsi_format_command() Hannes Reinecke
2014-11-17 13:25 ` [PATCH 07/10] scsi: use per-cpu buffer for formatting sense Hannes Reinecke
2014-11-17 13:25 ` [PATCH 08/10] scsi: use per-cpu buffer for formatting scsi_print_result() Hannes Reinecke
2014-11-17 13:25 ` [PATCH 09/10] scsi: Conditionally compile in constants.c Hannes Reinecke
2014-11-17 13:25 ` [PATCH 10/10] scsi: Do not display buffer pointers in scsi_log_send() Hannes Reinecke
2015-01-05 16:59 ` [PATCHv3 00/10] scsi logging update: the real thing Christoph Hellwig
2015-01-06 18:26   ` Hannes Reinecke

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.