[PATCH rfc] nvme: support io stats on the mpath device

Keith Busch kbusch at kernel.org
Fri Sep 30 08:21:25 PDT 2022


On Thu, Sep 29, 2022 at 07:14:23PM +0300, Sagi Grimberg wrote:
> 
> > > > 3. Do you have some performance numbers (we're touching the fast path
> > > > here) ?
> > > 
> > > This is pretty light-weight, accounting is per-cpu and only wrapped by
> > > preemption disable. This is a very small price to pay for what we gain.
> > 
> > It does add up, though, and some environments disable stats to skip the
> > overhead. At a minimum, you need to add a check for blk_queue_io_stat() before
> > assuming you need to account for stats.
> > 
> > Instead of duplicating the accounting, could you just have the stats file report
> > the sum of its hidden devices?
> 
> Interesting...
> 
> How do you suggest we do that? .collect_stats() callout in fops?

Maybe, yeah. I think we'd need something to enumerate the HIDDEN disks that
make up the multipath device. Only the low-level driver can do that right now,
so perhaps either call into the driver to get all the block_device parts, or
the gendisk needs to maintain a list of those parts itself.



More information about the Linux-nvme mailing list