|
|
|
|
|
|
|
|
|
|
xen-devel
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
|
|
|
|
|