From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-1?Q?Roger_Pau_Monn=E9?= Subject: Re: RING_HAS_UNCONSUMED_REQUESTS oddness Date: Wed, 12 Mar 2014 11:48:29 +0100 Message-ID: <53203B7D.5010105@citrix.com> References: <5318987C.3030303@citrix.com> <1394552666.30915.64.camel@kazak.uk.xensource.com> <531F9B17.5060107@citrix.com> <1394620083.21145.21.camel@kazak.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1WNgiD-0001vu-UW for xen-devel@lists.xenproject.org; Wed, 12 Mar 2014 10:48:38 +0000 In-Reply-To: <1394620083.21145.21.camel@kazak.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell , Zoltan Kiss Cc: "xen-devel@lists.xenproject.org" , Wei Liu , Tim Deegan List-Id: xen-devel@lists.xenproject.org On 12/03/14 11:28, Ian Campbell wrote: > On Tue, 2014-03-11 at 23:24 +0000, Zoltan Kiss wrote: >> On 11/03/14 15:44, Ian Campbell wrote: > >>> Is it the case that this macro considers a request to be unconsumed if >>> the *response* to a request is outstanding as well as if the request >>> itself is still on the ring? >> I don't think that would make sense. I think everywhere where this macro >> is called the caller is not interested in pending request (pending means >> consumed but not responded) > > It might be interested in such pending requests in some of the > pathological cases I allude to in the next paragraph though? > > For example if the ring has unconsumed requests but there are no slots > free for a response, it would be better to treat it as no unconsumed > requests until space opens up for a response, otherwise something else > just has to abort the processing of the request when it notices the lack > of space. Yes, I think this is true at least for blkback, when blkback starts processing a request it assumes that a response slot will be available in order to write the response when the request has finished processing. Roger.