|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH]: Better checking in range_straddles_page_boundar
On 22/10/08 10:05, "Chris Lalancette" <clalance@xxxxxxxxxx> wrote:
> Attached is a simple patch to slightly rework the logic in
> range_straddles_page_boundary(). The reason for this is to avoid a crash we
> are
> seeing on 32-bit dom0. Basically, the contiguous_bitmap is allocated based on
> max_low_pfn. However, the swiotlb code can be passed a request (in
> swiotlb_map_sg) that is > 1 page (I've seen 2 pages), and is also a page
> (sg->page) > max_low_pfn. If this combination happens, then you get a fatal
> page fault when doing the test_bit(pfn, contiguous_bitmap). For that reason,
> rework the logic in range_straddles_page_boundary so that if it gets a request
> >
> 1 page, and it's above max_low_pfn, then we force the splitting of the
> request.
> In our testing, this seems to fix the issue.
How about we just get rid of the contiguous_bitmap? We might as well if you
are going to push that check after calling
check_pages_physically_contiguous(), since no extent which is acceptable to
contiguous_bitmap should fail on check_pages_physically_contiguous(). I
think I kept contiguous_bitmap only as a fast check before calling that
slower function.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|