Port-xen archive

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

Re: xbd 32k transfer limit



On Tue, May 03, 2011 at 11:05:05AM -0500, Toby Karyadi wrote:
> Hi,
> 
> I know the comment in XEN3_DOMU says that xbd can't transfer > 32k and
> that MAXPHYS is set to 32768. What is it that's limiting it? If there
> is such a limit, has that changed with Xen 4.1?
> 
> Grepping around I found that MAXPHYS is used to define
> XENSHM_MAX_PAGES_PER_REQUEST as (MAXPHYS >> PAGE_SHIFT) in xen_shm.h.
> That define in turn is used to define array of granted tables, possibly,
> if my reading skills doesn't fail me. I'm sensing that the limit is
> probably related to the size of the ring of shared memory pages when
> moving data between domains, but I'm not sure. 

The real limit is inside the include/xen3-public/io/blkif.h file, which
defines the interface between front and backend block devices.
The size of a transfer is limited by BLKIF_MAX_SEGMENTS_PER_REQUEST, which
is 11. With 4k pages, this makes a max transfer size of 44k. As we want
a power of 2, we use 32k.


-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index