[PATCH rfc] nvme: support io stats on the mpath device
Max Gurtovoy
mgurtovoy at nvidia.com
Thu Sep 29 02:42:08 PDT 2022
Hi Sagi,
On 9/28/2022 10:55 PM, Sagi Grimberg wrote:
> Our mpath stack device is just a shim that selects a bottom namespace
> and submits the bio to it without any fancy splitting. This also means
> that we don't clone the bio or have any context to the bio beyond
> submission. However it really sucks that we don't see the mpath device
> io stats.
>
> Given that the mpath device can't do that without adding some context
> to it, we let the bottom device do it on its behalf (somewhat similar
> to the approach taken in nvme_trace_bio_complete);
Can you please paste the output of the application that shows the
benefit of this commit ?
>
> Signed-off-by: Sagi Grimberg <sagi at grimberg.me>
> ---
> drivers/nvme/host/apple.c | 2 +-
> drivers/nvme/host/core.c | 10 ++++++++++
> drivers/nvme/host/fc.c | 2 +-
> drivers/nvme/host/multipath.c | 18 ++++++++++++++++++
> drivers/nvme/host/nvme.h | 12 ++++++++++++
> drivers/nvme/host/pci.c | 2 +-
> drivers/nvme/host/rdma.c | 2 +-
> drivers/nvme/host/tcp.c | 2 +-
> drivers/nvme/target/loop.c | 2 +-
> 9 files changed, 46 insertions(+), 6 deletions(-)
Several questions:
1. I guess that for the non-mpath case we get this for free from the
block layer for each bio ?
2. Now we have doubled the accounting, haven't we ?
3. Do you have some performance numbers (we're touching the fast path
here) ?
4. Should we enable this by default ?
The implementation look good.
More information about the Linux-nvme
mailing list