Hi Marek, On Tue, 22 Sep 2020, Marek Szyprowski wrote:
> External email: Use caution opening links or attachments > > > Hi Alex, > > On 22.09.2020 01:15, Alex Goins wrote: > > Tested-by: Alex Goins <ago...@nvidia.com> > > > > This change fixes a regression with drm_prime_sg_to_page_addr_arrays() and > > AMDGPU in v5.9. > > Thanks for testing! > > > Commit 39913934 similarly revamped AMDGPU to use sgtable helper functions. > > When > > it changed from dma_map_sg_attrs() to dma_map_sgtable(), as a side effect it > > started correctly updating sgt->nents to the return value of > > dma_map_sg_attrs(). > > However, drm_prime_sg_to_page_addr_arrays() incorrectly uses sgt->nents to > > iterate over pages, rather than sgt->orig_nents, resulting in it now > > returning > > the incorrect number of pages on AMDGPU. > > > > I had written a patch that changes drm_prime_sg_to_page_addr_arrays() to use > > for_each_sgtable_sg() instead of for_each_sg(), iterating using > > sgt->orig_nents: > > > > - for_each_sg(sgt->sgl, sg, sgt->nents, count) { > > + for_each_sgtable_sg(sgt, sg, count) { > > > > This patch takes it further, but still has the effect of fixing the number > > of > > pages that drm_prime_sg_to_page_addr_arrays() returns. Something like this > > should be included in v5.9 to prevent a regression with AMDGPU. > > Probably the easiest way to handle a fix for v5.9 would be to simply > merge the latest version of this patch also to v5.9-rcX: > https://lore.kernel.org/dri-devel/20200904131711.12950-3-m.szyprow...@samsung.com/ Tested-by: Alex Goins <ago...@nvidia.com> that version too. > > This way we would get it fixed and avoid possible conflict in the -next. > Do you have any AMDGPU fixes for v5.9 in the queue? Maybe you can add that > patch to the queue? I don't have any more AMDGPU fixes, just want to ensure that this makes it in. Thanks, Alex > Dave: would it be okay that way? > > Best regards > -- > Marek Szyprowski, PhD > Samsung R&D Institute Poland > >