lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 01 Apr 2010 20:37:02 +0900
From:	Kei Tokunaga <tokunaga.keiich@...fujitsu.com>
To:	"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
	James Bottomley <James.Bottomley@...e.de>,
	Ingo Molnar <mingo@...hat.com>,
	Steven Rostedt <rostedt@...dmis.org>,
	Frederic Weisbecker <fweisbec@...il.com>,
	"Martin K. Petersen" <martin.petersen@...cle.com>
CC:	Tomohiro Kusumi <kusumi.tomohiro@...fujitsu.com>,
	lkml <linux-kernel@...r.kernel.org>,
	Li Zefan <lizf@...fujitsu.com>,
	Xiao Guangrong <xiaoguangrong@...fujitsu.com>,
	Kei Tokunaga <tokunaga.keiich@...fujitsu.com>
Subject: [PATCH 0/2 v4] scsi: ftrace based scsi tracer

Hi,

This is v4 patch series of SCSI trace.  Only a cosmetic change
from v3.

Because it's been a while since the first posting, I'll put brief
descriptions of the patchset.

  Basically, this is a ftrace based SCSI tracer.  It prints the
  following information for scsi-3 commands.

    o scsi bus number ("host")
    o scsi channel number ("channel")
    o scsi id ("id")
    o LUN ("lun")
    o command info
      - op name (ex. "WRITE_10")
      - LBA ("lba") (for certain commands only)
      - transfer length ("txlen") (for certain commands only)
      - CDB (ex. "raw=28 00 03 60 a2 cb 00 00 08 00")
    o result of the command
      (ex. "result=(driver=DRIVER_OK host=DID_OK
message=COMMAND_COMPLETE status=SAM_STAT_GOOD")

  Those information are printed either at a time:

    o when a command is to be dispatched,
    o when a command dispatched returns in error,
    o when a command is done,
    o when an error handler is to waken up, or
    o when timeout of a command is deteced.

  To use it quickly, try these steps:

    1) Build a kernel with the patchset applied
       (ftrace related kernel configs need to be enabled.)
    2) Boot the kernel
    3) Mount debugfs
       ex. mount -t debugfs none /sys/kernel/debug/
    4) Indicate events to trace
       ex. echo "scsi:*" > /sys/kernel/debug/tracing/set_event
    5) Make some I/Os on your scsi devices
       ex. ls
    6) Retrieve trace log
       ex. cat /sys/kernel/debug/tracing/trace

  Here is an outputs example:

    # tracer: nop
    #
    #           TASK-PID    CPU#    TIMESTAMP  FUNCTION
    #              | |       |          |         |
           flush-8:0-3746  [001]  1374.517152:
scsi_dispatch_cmd_start: host_no=0 channel=0 id=0 lun=0
cmnd=(WRITE_10 lba=32267539 txlen=8 raw=2a 00 01 ec 5d 13 00 00
08 00)
              <idle>-0     [000]  1374.524964:
scsi_dispatch_cmd_done: host_no=0 channel=0 id=0 lun=0
cmnd=(WRITE_10 lba=32267539 txlen=8 raw=2a 00 01 ec 5d 13 00 00
08 00) result=(driver=DRIVER_OK host=DID_OK
message=COMMAND_COMPLETE status=SAM_STAT_GOOD)

This patchset applies to 2.6.34-rc3.

Thanks,
Kei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ