From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cathy Avery Subject: Re: [PATCH] scsi: storvsc: Allow only one remove lun work item to be issued per lun Date: Mon, 17 Apr 2017 15:44:22 -0400 Message-ID: <58F51B16.1070202@redhat.com> References: <1492263790-11378-1-git-send-email-cavery@redhat.com> <20170415140647.GA12851@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20170415140647.GA12851@infradead.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" To: Christoph Hellwig Cc: sthemmin@microsoft.com, linux-scsi@vger.kernel.org, martin.petersen@oracle.com, haiyangz@microsoft.com, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, jejb@linux.vnet.ibm.com List-Id: linux-scsi@vger.kernel.org On 04/15/2017 10:06 AM, Christoph Hellwig wrote: > Just add a singlethreaded workqueue for storvsc_handle_error and you'll > get serialization for all error handling for free. The problem I am seeing is that many work items can be queued up for the same lun before it goes away. The single threaded queue would have to allow for only a queue of one and no more. Either that or each work item for a particular lun must have the same memory address so it gets rejected if it you try to queue a remove to the same lun twice. Maybe I am not understanding your suggestion correctly. Thanks, Cathy