Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751218AbdFAMgx (ORCPT ); Thu, 1 Jun 2017 08:36:53 -0400 Received: from mx2.mpynet.fi ([82.197.21.85]:40299 "EHLO mx2.mpynet.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751056AbdFAMgw (ORCPT ); Thu, 1 Jun 2017 08:36:52 -0400 Date: Thu, 1 Jun 2017 15:36:50 +0300 From: Rakesh Pandit To: Christoph Hellwig CC: Keith Busch , Sagi Grimberg , , , Jens Axboe , Andy Lutomirski Subject: Re: [PATCH V2] nvme: fix nvme_remove going to uninterruptible sleep for ever Message-ID: <20170601123650.GA18883@dhcp-216.srv.tuxera.com> References: <20170530071610.GA2679@hercules.tuxera.com> <4da7c939-1f54-80e5-48fc-06e58e14f018@grimberg.me> <20170530142346.GA39428@dhcp-216.srv.tuxera.com> <20170601114338.GA24855@lst.de> <20170601122818.GA18830@dhcp-216.srv.tuxera.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20170601122818.GA18830@dhcp-216.srv.tuxera.com> User-Agent: Mutt/1.7.1 (2016-10-04) X-ClientProxiedBy: tuxera-exch.ad.tuxera.com (10.20.48.11) To tuxera-exch.ad.tuxera.com (10.20.48.11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1424 Lines: 29 On Thu, Jun 01, 2017 at 03:28:18PM +0300, Rakesh Pandit wrote: > On Thu, Jun 01, 2017 at 01:43:38PM +0200, Christoph Hellwig wrote: > > On Tue, May 30, 2017 at 05:23:46PM +0300, Rakesh Pandit wrote: > > > We can fix user-space triggered set_features higger up e.g. in > > > nvme_ioctl by putting same check. Introduction of a separate state > > > NVME_CTRL_SCHED_RESET (being discussed in another thread) has > > > additional advantage of making sure that only one thread is going > > > through resetting and eventually through removal (if required) and > > > solves lot of problems. > > > > I think we need the NVME_CTRL_SCHED_RESET state. In fact I'm pretty > > sure some time in the past I already had it in a local tree as a > > generalization of rdma and loop already use NVME_CTRL_RESETTING > > (they set it before queueing the reset work). > > > > But I don't fully understand how the NVME_CTRL_SCHED_RESET fix is > > related to this patch? > > They aren't related. Sorry for confusion. I intended to answer > another thread but instead wrote it here. > Also Sagi pointed out that user space set_features ioctl if fired up in a window after nvme_removal it can also result in this issue seems to be correct. I would prefer to keep this as it is and introduce similar check higher up in nvme_ioctrl instead so that we don't send sync commands if queues are killed already. Would you prefer a patch ? Thanks,