Messages in this thread | | | Date | Mon, 10 Nov 2014 18:41:11 +0000 | From | Catalin Marinas <> | Subject | Re: [PATCH v8 03/13] xen/arm: if(pfn_valid(pfn)) call native dma_ops |
| |
On Mon, Nov 10, 2014 at 04:13:55PM +0000, Stefano Stabellini wrote: > void xen_dma_unmap_page(struct device *hwdev, dma_addr_t handle, > size_t size, enum dma_data_direction dir, > - struct dma_attrs *attrs); > + struct dma_attrs *attrs) > +{ > + unsigned long pfn = PFN_DOWN(handle); > + /* Dom0 is mapped 1:1, so calling pfn_valid on a foreign mfn will > + * always return false. If the page is local we can safely call the > + * native dma_ops function, otherwise we call the xen specific > + * function. */ > + if (pfn_valid(pfn)) { > + if (__generic_dma_ops(hwdev)->unmap_page) > + __generic_dma_ops(hwdev)->unmap_page(hwdev, handle, size, dir, attrs);
Similarly here, do we need the unmap_page check? dma_map_page() does not do it.
-- Catalin
| |