[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH RFC 0/4] tools: Upstream blktap "2.5" as an external repo




> -----Original Message-----
> From: George Dunlap [mailto:george.dunlap@xxxxxxxxxxxxx]
> Sent: 26 March 2015 17:23
> To: Andrew Cooper; Felipe Franciosi; George Dunlap; Jonathan Ludlam
> Cc: Dave Scott; Wei Liu; Ian Campbell; Wen Congyang; xen-devel@xxxxxxxxxxxxx;
> Ian Jackson; Yang Hongyang
> Subject: Re: [Xen-devel] [PATCH RFC 0/4] tools: Upstream blktap "2.5" as an
> external repo
> 
> On 03/26/2015 05:12 PM, Andrew Cooper wrote:
> > On 26/03/15 17:05, George Dunlap wrote:
> >> On 03/26/2015 04:25 PM, Felipe Franciosi wrote:
> >>>> Another thing I'd like to explore (since this took all of about an
> >>>> afternoon to get
> >>>> working) is what it would take to switch to using
> >>>> blktap3 instead.  As I understand from my conversations with the
> >>>> XenServer team, they use a kernel module in XenServer when mounting
> >>>> an image in dom0 for scalability reasons; but there's no reason
> >>>> XenProject need to do the same thing.
> >>> Today, to access virtual disks in dom0 we use the blktap2 kernel
> >>> module that Jonathan Ludlam mentioned. This provides a block device
> >>> (in /dev/xen/blktap-2/tapdev<minor>). In the (somewhat distant)
> >>> past, we actually had blkfront in dom0.
> >> OK -- so the XenServer blktap2 kernel module is definitely being
> >> maintained.  That's good to know.
> >>
> >>> What is also needed to get blktap3 working is a gntdev supporting
> >>> grant copy. I believe this is the order they are applied in 3.10:
> >>> https://github.com/xenserver/linux-3.x.pg/blob/master/master/0001-xe
> >>> n-install-xen-gntdev.h-and-xen-gntalloc.h.patch
> >>>
> >>> https://github.com/xenserver/linux-3.x.pg/blob/master/master/xen-gnt
> >>> dev-grant-copy.patch
> >>>
> >>> https://github.com/xenserver/linux-3.x.pg/blob/master/master/0002-xe
> >>> n-gntdev-mark-userspace-PTEs-as-special-on-x86-PV-.patch
> >>>
> >>> https://github.com/xenserver/linux-3.x.pg/blob/master/master/0003-xe
> >>> n-gntdev-provide-a-set-of-pages-for-the-VMA.patch
> >>>
> >>>
> >>> The _main_ difference between tapdisk2 and 3 is that tapdisk3 can
> >>> connect directly to blkfront. It does all I/O via grant copies which
> >>> has some implications in the way memory is handled in dom0.
> >> Right, I didn't realize blktap3 also required kernel changes.  Are
> >> those reasonably upstream-able, and is there any plan by the
> >> XenServer team to upstream them?
> >
> > They are all in Linux 3.19 iirc.  These are not patches for blktap3
> > specially; they are all patches fixing the use of userspace grant maps
> > with /dev/xen/gnttab, which never functioned correctly in the past.

I don't think they are all in 3.19. I just had a quick look and our gntdev.c 
looks very different than upstream's.

The grant-copy patch is definitely missing on Linux 4.0-rc5.

Cheers,
F.

> 
> OK, good.  So with my XenProject hat on, nothing needs to be done per se to
> use blktap3; we just need to tell people to use linux >= 3.19.  (And make sure
> there's a robust way to detect the necessary kernel support before trying to 
> use
> blktap3.)
> 
> With my CentOS hat on, if I want to use an older version of Linux, I need to
> import / port those patches to whatever version I'm using; but that's not
> directly relevant to this discussion.
> 
>  -George


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.