drm/vmwgfx: Use the dma scatter-gather iterator to get dma addresses
Use struct sg_dma_page_iter in favour struct of sg_page_iter, which fairly
recently was declared useless for obtaining dma addresses.
With a struct sg_dma_page_iter we can't call sg_page_iter_page() so
when the page is needed, use the same page lookup mechanism as for the
non-sg dma modes instead of calling sg_dma_page_iter.
Note, the fixes tag doesn't really point to a commit introducing a
failure / regression, but rather to a commit that implemented a simple
workaround for this problem.
Cc: Jason Gunthorpe <jgg@mellanox.com>
Fixes: d901b2760d
("lib/scatterlist: Provide a DMA page iterator")
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
@@ -296,7 +296,7 @@ struct vmw_sg_table {
|
||||
struct vmw_piter {
|
||||
struct page **pages;
|
||||
const dma_addr_t *addrs;
|
||||
struct sg_page_iter iter;
|
||||
struct sg_dma_page_iter iter;
|
||||
unsigned long i;
|
||||
unsigned long num_pages;
|
||||
bool (*next)(struct vmw_piter *);
|
||||
|
Reference in New Issue
Block a user