|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Status of "Out of SW-IOMMU space" problem?
Summary from the previous episodes: ;) A) Xen 3.1.0 runs fineB) Any newer version generates SW-IOMMU problem when Dom0 is under I/O stress. C) Starting from there, I decided to build a Xen 3.1.3 / Linux 2.6.18.8 kernel excluding all changes related to swiotlb.c. That means: backout of changsets 15412, 15409, 15408, 15407 and 15405 This configuration runs fine as well!Then, I re-applied changeset 15405, and the problem re-appears. So the issue is really linked to this changeset.
Looking at it more in detail, there is only one 'intrusive' change there:
swiotlb.c
575 if (address_needs_mapping(hwdev, dev_addr)) {
becomes
575 if
(range_straddles_page_boundary(page_to_pseudophys(sg->page)
576 + sg->offset, sg->length)
577 || address_needs_mapping(hwdev, dev_addr)) {
And indeed, if I remove the test on 'range_straddles_page_boundary', it
runs fine, if I leave it, I get the SW-IOMMU problem.
To understand how big the impact of the 'range_straddles_page_boundary' test is, I added an else/printk and it gives: Apr 21 09:07:45 xenon kernel: SWIOTLB - range_straddles_page_boundary test bypassed Apr 21 09:07:58 xenon last message repeated 3629 times ... so the impact is rather big: about 300 times per second...This is almost as far as I can go on the topic. My knowledge on what's really happening in that part of the code is somewhat limited. So I appreciate any help on how to progress this further.(Side note: not sure what's happening here, looks like the mailing lists are broken...) -- Phil. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |