From: "jianchao.wang" <jianchao.w.wang@oracle.com> To: Keith Busch <keith.busch@intel.com> Cc: axboe@fb.com, hch@lst.de, sagi@grimberg.me, maxg@mellanox.com, james.smart@broadcom.com, linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH V5 0/2] nvme-pci: fix the timeout case when reset is ongoing Date: Sat, 20 Jan 2018 22:14:51 +0800 [thread overview] Message-ID: <b5056edd-4806-0815-ec5e-b023b313a086@oracle.com> (raw) In-Reply-To: <ea00677b-6d79-e9c0-e0af-78e287f29ddd@oracle.com> On 01/20/2018 10:07 PM, jianchao.wang wrote: > Hi Keith > > Thanks for you kindly response. > > On 01/20/2018 10:11 AM, Keith Busch wrote: >> On Fri, Jan 19, 2018 at 09:56:48PM +0800, jianchao.wang wrote: >>> In nvme_dev_disable, the outstanding requests will be requeued finally. >>> I'm afraid the requests requeued on the q->requeue_list will be blocked until another requeue >>> occurs, if we cancel the requeue work before it get scheduled. >> >> We should kick the request list in nvme_start_queues. >> > Yes > > @@ -3513,8 +3513,10 @@ void nvme_start_queues(struct nvme_ctrl *ctrl) > struct nvme_ns *ns; > > mutex_lock(&ctrl->namespaces_mutex); > - list_for_each_entry(ns, &ctrl->namespaces, list) > + list_for_each_entry(ns, &ctrl->namespaces, list) { > blk_mq_unquiesce_queue(ns->queue); > + blk_mq_kick_requeue_list(ns->queue); > + } > mutex_unlock(&ctrl->namespaces_mutex); > } We have to also add blk_mq_kick_requeue_list in nvme_kill_queues in case of queue_count < 2. > > Then, nvme_sync_queues could be more universal. > > Many thanks for your directive. > > Jianchao >
WARNING: multiple messages have this Message-ID (diff)
From: jianchao.w.wang@oracle.com (jianchao.wang) Subject: [PATCH V5 0/2] nvme-pci: fix the timeout case when reset is ongoing Date: Sat, 20 Jan 2018 22:14:51 +0800 [thread overview] Message-ID: <b5056edd-4806-0815-ec5e-b023b313a086@oracle.com> (raw) In-Reply-To: <ea00677b-6d79-e9c0-e0af-78e287f29ddd@oracle.com> On 01/20/2018 10:07 PM, jianchao.wang wrote: > Hi Keith > > Thanks for you kindly response. > > On 01/20/2018 10:11 AM, Keith Busch wrote: >> On Fri, Jan 19, 2018@09:56:48PM +0800, jianchao.wang wrote: >>> In nvme_dev_disable, the outstanding requests will be requeued finally. >>> I'm afraid the requests requeued on the q->requeue_list will be blocked until another requeue >>> occurs, if we cancel the requeue work before it get scheduled. >> >> We should kick the request list in nvme_start_queues. >> > Yes > > @@ -3513,8 +3513,10 @@ void nvme_start_queues(struct nvme_ctrl *ctrl) > struct nvme_ns *ns; > > mutex_lock(&ctrl->namespaces_mutex); > - list_for_each_entry(ns, &ctrl->namespaces, list) > + list_for_each_entry(ns, &ctrl->namespaces, list) { > blk_mq_unquiesce_queue(ns->queue); > + blk_mq_kick_requeue_list(ns->queue); > + } > mutex_unlock(&ctrl->namespaces_mutex); > } We have to also add blk_mq_kick_requeue_list in nvme_kill_queues in case of queue_count < 2. > > Then, nvme_sync_queues could be more universal. > > Many thanks for your directive. > > Jianchao >
next prev parent reply other threads:[~2018-01-20 14:16 UTC|newest] Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-01-18 10:10 [PATCH V5 0/2] nvme-pci: fix the timeout case when reset is ongoing Jianchao Wang 2018-01-18 10:10 ` Jianchao Wang 2018-01-18 10:10 ` [PATCH V5 1/2] nvme-pci: introduce RECONNECTING state to mark initializing procedure Jianchao Wang 2018-01-18 10:10 ` Jianchao Wang 2018-01-18 10:17 ` Max Gurtovoy 2018-01-18 10:17 ` Max Gurtovoy 2018-01-19 9:49 ` jianchao.wang 2018-01-19 9:49 ` jianchao.wang 2018-01-18 15:23 ` James Smart 2018-01-18 15:23 ` James Smart 2018-01-18 10:10 ` [PATCH V5 2/2] nvme-pci: fixup the timeout case when reset is ongoing Jianchao Wang 2018-01-18 10:10 ` Jianchao Wang 2018-01-19 4:59 ` Keith Busch 2018-01-19 4:59 ` Keith Busch 2018-01-19 5:55 ` jianchao.wang 2018-01-19 5:55 ` jianchao.wang 2018-01-19 6:05 ` Keith Busch 2018-01-19 6:05 ` Keith Busch 2018-01-19 6:53 ` jianchao.wang 2018-01-19 6:53 ` jianchao.wang 2018-01-18 15:34 ` [PATCH V5 0/2] nvme-pci: fix " James Smart 2018-01-18 15:34 ` James Smart 2018-01-19 8:01 ` Keith Busch 2018-01-19 8:01 ` Keith Busch 2018-01-19 8:14 ` jianchao.wang 2018-01-19 8:14 ` jianchao.wang 2018-01-19 8:42 ` Keith Busch 2018-01-19 8:42 ` Keith Busch 2018-01-19 9:02 ` jianchao.wang 2018-01-19 9:02 ` jianchao.wang 2018-01-19 11:52 ` Keith Busch 2018-01-19 11:52 ` Keith Busch 2018-01-19 13:56 ` jianchao.wang 2018-01-19 13:56 ` jianchao.wang 2018-01-20 2:11 ` Keith Busch 2018-01-20 2:11 ` Keith Busch 2018-01-20 14:07 ` jianchao.wang 2018-01-20 14:07 ` jianchao.wang 2018-01-20 14:14 ` jianchao.wang [this message] 2018-01-20 14:14 ` jianchao.wang
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=b5056edd-4806-0815-ec5e-b023b313a086@oracle.com \ --to=jianchao.w.wang@oracle.com \ --cc=axboe@fb.com \ --cc=hch@lst.de \ --cc=james.smart@broadcom.com \ --cc=keith.busch@intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvme@lists.infradead.org \ --cc=maxg@mellanox.com \ --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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.