linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Cassiano Campes <cassianocampes@gmail.com>
To: hch@lst.de, axboe@fb.com, kbusch@kernel.org, sagi@grimberg.me
Cc: cassianocampes@gmail.com, linux-nvme@lists.infradead.org
Subject: [PATCH] nvme: write streams are used even when streams are disabled
Date: Tue, 17 Sep 2019 14:17:40 -0300	[thread overview]
Message-ID: <20190917171740.GA32566@iss> (raw)

Even when the streams flag at the nvme_core module is not set, the
nvme_assign_write_stream is called unnecessarily, and the write hint
is passed to the controller, thus resulting in a shadowed stream usage.

Although the user application may pass the write_hint to the device driver,
the user may have disabled the streams support by toggling the
/sys/module/nvme_core/parameters/streams flag.

Later, the user may want to enable the streams support to get some write
performance improvement, however the user will not notice any performance
difference because the write streams separation was already happening
although the streams flag was not set.

Signed-off-by: Cassiano Campes <cassianocampes@gmail.com>
---
 drivers/nvme/host/core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index d3d6b7bd6903..5a77aea0a58e 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -645,7 +645,7 @@ static inline blk_status_t nvme_setup_rw(struct nvme_ns *ns,
 	cmnd->rw.slba = cpu_to_le64(nvme_block_nr(ns, blk_rq_pos(req)));
 	cmnd->rw.length = cpu_to_le16((blk_rq_bytes(req) >> ns->lba_shift) - 1);
 
-	if (req_op(req) == REQ_OP_WRITE && ctrl->nr_streams)
+	if (req_op(req) == REQ_OP_WRITE && ctrl->nr_streams && streams)
 		nvme_assign_write_stream(ctrl, req, &control, &dsmgmt);
 
 	if (ns->ms) {
-- 
2.17.1


_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

             reply	other threads:[~2019-09-17 17:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-17 17:17 Cassiano Campes [this message]
2019-09-17 17:51 ` [PATCH] nvme: write streams are used even when streams are disabled Keith Busch

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=20190917171740.GA32566@iss \
    --to=cassianocampes@gmail.com \
    --cc=axboe@fb.com \
    --cc=hch@lst.de \
    --cc=kbusch@kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=sagi@grimberg.me \
    /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;
as well as URLs for NNTP newsgroup(s).