* [regression] nvme flush failed from v5.13-rc1
@ 2021-05-18 13:23 Yi Zhang
2021-05-18 14:42 ` Keith Busch
0 siblings, 1 reply; 2+ messages in thread
From: Yi Zhang @ 2021-05-18 13:23 UTC (permalink / raw)
To: Keith Busch; +Cc: linux-nvme
Hi
commit[3] add a check to validates nsid which will lead nvme flush
cmd[1] failed as the cmd.nsid will use the default nsid:
NVME_NSID_ALL[2], that finally lead validate failed, any suggestions
to fix it?
[1]
# nvme flush /dev/nvme0n1
flush: Invalid argument
# dmesg
[ 802.131609] nvme nvme0: nvme: nsid (4294967295) in cmd does not
match nsid (1) of namespace
[2]
struct config cfg = {
.namespace_id = NVME_NSID_ALL,
};
[3]
commit c881a23fb6f7eb901155d25ba8dd1af0b8c7923b (HEAD, refs/bisect/bad)
Author: Niklas Cassel <niklas.cassel@wdc.com>
Date: Fri Mar 26 19:48:00 2021 +0000
nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev
--
Best Regards,
Yi Zhang
_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [regression] nvme flush failed from v5.13-rc1
2021-05-18 13:23 [regression] nvme flush failed from v5.13-rc1 Yi Zhang
@ 2021-05-18 14:42 ` Keith Busch
0 siblings, 0 replies; 2+ messages in thread
From: Keith Busch @ 2021-05-18 14:42 UTC (permalink / raw)
To: Yi Zhang; +Cc: linux-nvme
On Tue, May 18, 2021 at 09:23:39PM +0800, Yi Zhang wrote:
> Hi
> commit[3] add a check to validates nsid which will lead nvme flush
> cmd[1] failed as the cmd.nsid will use the default nsid:
> NVME_NSID_ALL[2], that finally lead validate failed, any suggestions
> to fix it?
Flush is the only IO command that accepts a broadcast NSID, but the
kernel now prevents dispatching commands to anything but the NSID of the
block device that you dispatched it. Perhaps the kernel can relax that
requirement and accept "all namespaces" for IO commands (I'll look into
that).
I'll change nvme-cli to default to the block device's NSID, since that
should always work.
> [1]
> # nvme flush /dev/nvme0n1
> flush: Invalid argument
> # dmesg
> [ 802.131609] nvme nvme0: nvme: nsid (4294967295) in cmd does not
> match nsid (1) of namespace
>
> [2]
> struct config cfg = {
> .namespace_id = NVME_NSID_ALL,
> };
>
> [3]
> commit c881a23fb6f7eb901155d25ba8dd1af0b8c7923b (HEAD, refs/bisect/bad)
> Author: Niklas Cassel <niklas.cassel@wdc.com>
> Date: Fri Mar 26 19:48:00 2021 +0000
>
> nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev
_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-05-18 14:43 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-18 13:23 [regression] nvme flush failed from v5.13-rc1 Yi Zhang
2021-05-18 14:42 ` Keith Busch
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.