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

Re: [Xen-devel] SWIOMMU redundant copies?



On 14/3/08 16:34, "Stephen C. Tweedie" <sct@xxxxxxxxxx> wrote:

>> Yes, the swiotlb check could be relaxed. Do we really do many mergeable
>> page-straddling I/Os in practice though? I would expect most block I/O to be
>> scattered by the page cache.
> 
> I would, too --- but it appears to be a genuine issue at boot time at
> least, when the page cache has not yet become too fragmented.
> 
> I'm still trying to understand the corner cases involved.  Some
> hardware seems to have more trouble than others --- it could well be
> special-case sg segments such as DMA drain buffers which are causing the
> trouble for those, in which case doing the copy for every map_sg() will
> potentially be a significant problem.  (MarkMC hit that same problem
> bringing the dom0 patches onto 2.6.25 which has reworked drain buffer
> code.)

It certainly seems sensible to improve the page-discontiguity check.
Possibly we can stick it inside page_straddles_boundary() (perhaps with a
name change) and fix every caller.

Also, I agree it sounds like something fishier is going on and this is
perhaps only a workaround that fortuitously works in this case... :-(

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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