>-----Original Message----- >From: dri-devel <dri-devel-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of >Shane Francis >Sent: Wednesday, March 25, 2020 5:08 AM >To: dri-devel@xxxxxxxxxxxxxxxxxxxxx >Cc: airlied@xxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; bigbeeshane@xxxxxxxxx; >amd-gfx-request@xxxxxxxxxxxxxxxxxxxxx; alexander.deucher@xxxxxxx; >christian.koenig@xxxxxxx >Subject: [PATCH v4 1/3] drm/prime: use dma length macro when mapping sg > >As dma_map_sg can reorganize scatter-gather lists in a >way that can cause some later segments to be empty we should >always use the sg_dma_len macro to fetch the actual length. > >This could now be 0 and not need to be mapped to a page or >address array >Signed-off-by: Shane Francis <bigbeeshane@xxxxxxxxx> >--- > drivers/gpu/drm/drm_prime.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c >index 86d9b0e45c8c..1de2cde2277c 100644 >--- a/drivers/gpu/drm/drm_prime.c >+++ b/drivers/gpu/drm/drm_prime.c >@@ -967,7 +967,7 @@ int drm_prime_sg_to_page_addr_arrays(struct >sg_table *sgt, struct page **pages, > > index = 0; > for_each_sg(sgt->sgl, sg, sgt->nents, count) { >- len = sg->length; >+ len = sg_dma_len(sg); > page = sg_page(sg); > addr = sg_dma_address(sg); This looks correct to me. Reviewed-by: Michael J. Ruhl <michael.j.ruhl@xxxxxxxxx> M > >-- >2.26.0 > >_______________________________________________ >dri-devel mailing list >dri-devel@xxxxxxxxxxxxxxxxxxxxx >https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel