From: Martin Peschke <mp3@de.ibm.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: linux-kernel@vger.kernel.org, akpm@osdl.org, linux-scsi@vger.kernel.org
Subject: Re: [patch 6/6] statistics infrastructure - exploitation: zfcp
Date: Thu, 15 Dec 2005 04:54:15 +0100 [thread overview]
Message-ID: <43A0E8E7.1060706@de.ibm.com> (raw)
In-Reply-To: <20051214165900.GA26580@infradead.org>
Christoph Hellwig wrote:
>>+ atomic_t read_num;
>>+ atomic_t write_num;
>>+ struct statistic_interface *stat_if;
>>+ struct statistic *stat_sizes_scsi_write;
>>+ struct statistic *stat_sizes_scsi_read;
>>+ struct statistic *stat_sizes_scsi_nodata;
>>+ struct statistic *stat_sizes_scsi_nofit;
>>+ struct statistic *stat_sizes_scsi_nomem;
>>+ struct statistic *stat_sizes_timedout_write;
>>+ struct statistic *stat_sizes_timedout_read;
>>+ struct statistic *stat_sizes_timedout_nodata;
>>+ struct statistic *stat_latencies_scsi_write;
>>+ struct statistic *stat_latencies_scsi_read;
>>+ struct statistic *stat_latencies_scsi_nodata;
>>+ struct statistic *stat_pending_scsi_write;
>>+ struct statistic *stat_pending_scsi_read;
>>+ struct statistic *stat_erp;
>>+ struct statistic *stat_eh_reset;
>>
>>
>
>NACK. pretty much all of this is generic and doesn't belong into an LLDD.
>We already had this statistics things with emulex and they added various
>bits to the core in response.
>
>
>
>
Agreed. It's not necessarily up to LLDDs to keep track of request sizes,
request latencies, I/O queue utilization, and error recovery conditions
by means of statistics. This could or maybe should be done in a more
central spot.
With regard to latencies, it might make some difference, though, how
many layers are in between that cause additional delays. Then the
question is which latency one wants to measure.
There is some very basic measurement data on FC-4 or FCP level in the FC
transport class code:
&class_device_attr_host_fcp_input_requests.attr,
&class_device_attr_host_fcp_output_requests.attr,
&class_device_attr_host_fcp_control_requests.attr,
&class_device_attr_host_fcp_input_megabytes.attr,
&class_device_attr_host_fcp_output_megabytes.attr,
&class_device_attr_host_reset_statistics.attr,
Looks like
- counters for the number of read and write requests and requests
without any data
- counters for the number of megabytes read and written
- a counter for one out of several recovery conditions
The gap between the statistics posted by me and the FCP transport
statistics is
- no information about the actual traffic pattern generated by Linux
(no information - e.g. histogram - about request size,
no information - e.g. histogram - about latencies)
- no information about command timeouts
- no information about I/O concurrency caused by TCQ
I am not sure whether the transport statistics refer to the overall
utilization of an actual FC port - let's call it physical HBA -, or to
the share of an FC port utilized by one out of several sharing OS
instances - let's call these shares, carved out of an FC port, virtual HBAs.
I won't object to move some stuff. But neither think I that a transport
class would be the right place for latencies etc. nor would I like to
give up certain functionality, like histograms.
Would it be fine with you to move such statistics to the scsi mid layer,
provided I can get lkml's approval for some form of a generic statistic
code as it comes with my zfcp patch?
Martin
next prev parent reply other threads:[~2005-12-15 3:54 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-14 16:14 [patch 6/6] statistics infrastructure - exploitation: zfcp Martin Peschke
2005-12-14 16:24 ` Matthew Wilcox
2005-12-14 16:55 ` Martin Peschke
2005-12-14 17:17 ` Heiko Carstens
2005-12-14 16:59 ` Christoph Hellwig
2005-12-15 3:54 ` Martin Peschke [this message]
2005-12-15 7:37 ` Arjan van de Ven
2005-12-15 11:23 ` Martin Peschke
2005-12-15 11:46 ` Arjan van de Ven
2005-12-15 14:38 ` Martin Peschke
-- strict thread matches above, loose matches on Subject: below --
2005-12-15 15:27 James.Smart
2005-12-15 17:47 ` Martin Peschke
2006-05-19 16:14 [Patch " Martin Peschke
2006-05-24 12:35 Martin Peschke
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=43A0E8E7.1060706@de.ibm.com \
--to=mp3@de.ibm.com \
--cc=akpm@osdl.org \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--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