public inbox for linux-raid@vger.kernel.org
 help / color / mirror / Atom feed
From: Artur Paszkiewicz <artur.paszkiewicz@intel.com>
To: Guoqing Jiang <guoqing.jiang@cloud.ionos.com>,
	jeffm@suse.com, linux-raid@vger.kernel.org, song@kernel.org
Cc: nfbrown@suse.com, colyli@suse.com
Subject: Re: [PATCH] mdraid: fix read/write bytes accounting
Date: Tue, 23 Jun 2020 18:48:40 +0200	[thread overview]
Message-ID: <ac89af6c-1610-61b5-d275-304e6e54947f@intel.com> (raw)
In-Reply-To: <fb3b18e6-9dda-6633-e25e-a141718f630b@cloud.ionos.com>

On 6/23/20 4:21 PM, Guoqing Jiang wrote:
> Hi Artur,
> 
> On 6/8/20 9:13 AM, Artur Paszkiewicz wrote:
>> On 6/5/20 10:19 PM, jeffm@suse.com wrote:
>>> The i/o accounting published in /proc/diskstats for mdraid is currently
>>> broken.  md_make_request does the accounting for every bio passed but
>>> when a bio needs to be split, all the split bios are also submitted
>>> through md_make_request, resulting in multiple accounting.
>> Hi Jeff,
>>
>> I sent a patch a few days ago which should fix this issue. Can you check
>> it out?
>>
>> https://marc.info/?l=linux-raid&m=159102814820539
> 
> I need to account some extra statistics for bio such as latency and size,
> so it is kind of relies on your patch, then I read the code again.
> 
> And besides my previous comment. I think you don't need clone bio for all
> personalities. For md-multipath, raid1 and raid10, you can track the start
> time by add it to those structures (multipath_bh, r1bio and r10bio), then
> one extra copy could be avoided.
> 
> What do you think?

You're right, cloning can be avoided for those personalities. I wanted
to keep it clean and centralized in the generic md code. I think we
should have a common completion callback and some common request
structure for all md personalities, like struct md_io which I'm using in
my patch. How about we add it to the existing stucts like r1bio etc. and
use that for io accounting, and clone the bio with the struct otherwise?
Or maybe remove the cloning from the personalities and instead make the
bio cloned in md_make_request available to them? Does this make sense?

Thanks,
Artur

  reply	other threads:[~2020-06-23 16:48 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-05 20:19 [PATCH] mdraid: fix read/write bytes accounting jeffm
2020-06-08  7:13 ` Artur Paszkiewicz
2020-06-23 14:21   ` Guoqing Jiang
2020-06-23 16:48     ` Artur Paszkiewicz [this message]
2020-06-25  9:13       ` Guoqing Jiang
2020-06-23 14:24   ` Jeff Mahoney
2020-06-09  6:37 ` kernel test robot

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=ac89af6c-1610-61b5-d275-304e6e54947f@intel.com \
    --to=artur.paszkiewicz@intel.com \
    --cc=colyli@suse.com \
    --cc=guoqing.jiang@cloud.ionos.com \
    --cc=jeffm@suse.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=nfbrown@suse.com \
    --cc=song@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