This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Problem with PV disk and iSCSI

To: Gary Grebus <ggrebus@xxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Problem with PV disk and iSCSI
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Mon, 11 Feb 2008 15:56:08 +0000
Cc: Kurt Hackel <kurt.hackel@xxxxxxxxxx>, xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 11 Feb 2008 07:57:06 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <1202743587.3109.189.camel@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Achsxp1k28IEYti5EdyybgAX8io7RQ==
Thread-topic: [Xen-devel] Problem with PV disk and iSCSI
User-agent: Microsoft-Entourage/
On 11/2/08 15:26, "Gary Grebus" <ggrebus@xxxxxxxxxxxxxxx> wrote:

>> netback already does this kind of reference counting. It oughtn't to be hard
>> to check the page reference count in the blkback I/O completion handler and,
>> if non-zero, set up a callback for when the count does fall to zero. And
>> defer responding to the frontend until that time. Netback is even more
>> sophisticated in that it also sets a time out and if the page languishes for
>> too long with non-zero count, it's able to forcibly copy-and-release the
>> page. I don't think we need to go that far for blkback however.
> In the failure I'm seeing, the skb could sit on a socket queue
> indefinitely.  The application reading the socket could be blocked for
> some other reason.  blkback can't defer responding to blkfront
> (completing the guest I/O).
> I think blkback needs to assume that a completion with a non-zero page
> reference count means it needs to make a copy, or implement a timeout
> like netback.

Either way, most of the infrastructure you need should be there, and you can
crib from netback to work out how to use it.

 -- Keir

Xen-devel mailing list