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


[Xen-devel] Re: [RFC PATCH v01] Xen PVSCSI drivers for pvops xen/stable-

To: Pasi Kärkkäinen <pasik@xxxxxx>
Subject: [Xen-devel] Re: [RFC PATCH v01] Xen PVSCSI drivers for pvops xen/stable-2.6.32.x kernel
From: Nathanael Rensen <nathanael@xxxxxxxxxxxxxxxx>
Date: Fri, 7 Jan 2011 18:03:59 +0800
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Delivery-date: Fri, 07 Jan 2011 02:04:56 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On 7 January 2011 06:35,  Pasi Kärkkäinen <pasik@xxxxxx> wrote:
> Hello,
> http://pasik.reaktio.net/xen/patches/xen-pvscsi-drivers-linux-
> This is the first version of Xen PVSCSI drivers, both the scsiback backend and
> scsifront frontend, ported from Novell SLES11SP1 2.6.32 Xenlinux kernel to
> pvops xen/stable-2.6.32.x branch.
> -- Pasi

That's great. Some comments based on my experience with pvusb:

1) You've added GNTST_eagain into include/xen/interface/grant_table.h.
When porting the pvusb drivers I removed the "check and retry" loops
based on GNTST_eagain because I noticed that netback and blkback don't
do that. Looking at the grant_table code in xen-4.0-testing I don't
think GNTST_eagain is used now. Perhaps someone with knowledge of the
history of GNTST_eagain could help to clarify.

2) When porting pvusb I found I had to take care with the
gnttab_grant_foreign_access_ref calls. Following the example of
blkback I replaced
   buffer_pfn = page_to_phys(page) >> PAGE_SHIFT;
   buffer_mfn = pfn_to_mfn(page_to_pfn(page));
The situation for pvscsi looks a bit more involved (e.g. buffer_pfn++).

3) The existing xen-netfront, xen-blkfront and xen-pcifront have been
converted to a single .c module when ported to pvops. I followed that
lead with pvusb. You might like to do the same for consistency.


Xen-devel mailing list