Jeremy, shouldn''t is_xen_swiotlb_buffer() also check against e.g. highstart_pfn to deal with wrap-around potentially leading to aliasing of [xen_io_tlb_start,xen_io_tlb_end)? Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Jeremy Fitzhardinge
2009-Dec-15 18:34 UTC
[Xen-devel] Re: is_xen_swiotlb_buffer() vs CONFIG_HIGHMEM
On 12/14/2009 07:02 AM, Jan Beulich wrote:> shouldn''t is_xen_swiotlb_buffer() also check against e.g. highstart_pfn > to deal with wrap-around potentially leading to aliasing of > [xen_io_tlb_start,xen_io_tlb_end)? >So what you''re saying is that if the pfn is for a high page, then "__va(pfn << PAGE_SHIFT);" is simply invalid. The resulting addr is undefined, and may end up erroneously aliasing with the xen tlb buffer. Do I understand your concern properly? J _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Jan Beulich
2009-Dec-16 07:40 UTC
[Xen-devel] Re: is_xen_swiotlb_buffer() vs CONFIG_HIGHMEM
>>> Jeremy Fitzhardinge <jeremy@goop.org> 15.12.09 19:34 >>> >On 12/14/2009 07:02 AM, Jan Beulich wrote: >> shouldn''t is_xen_swiotlb_buffer() also check against e.g. highstart_pfn >> to deal with wrap-around potentially leading to aliasing of >> [xen_io_tlb_start,xen_io_tlb_end)? >> > >So what you''re saying is that if the pfn is for a high page, then >"__va(pfn << PAGE_SHIFT);" is simply invalid. The resulting addr is >undefined, and may end up erroneously aliasing with the xen tlb buffer. > >Do I understand your concern properly?Yes. Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel