On Tue, Oct 06, 2020 at 08:35:08PM +1100, Stephen Rothwell wrote: > Hi all, > > After merging the hmm tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > > Caused by commit > > 07da1223ec93 ("lib/scatterlist: Add support in dynamic allocation of SG table from pages") > > interacting with commit > > 707d561f77b5 ("drm: allow limiting the scatter list size.") > > from the drm tree. > > I have added the following merge fix patch > > From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > Date: Tue, 6 Oct 2020 20:22:51 +1100 > Subject: [PATCH] lib/scatterlist: merge fix for "drm: allow limiting the > scatter list size." > > Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > drivers/gpu/drm/drm_prime.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c > index 11fe9ff76fd5..83ac901b65a2 100644 > +++ b/drivers/gpu/drm/drm_prime.c > @@ -807,6 +807,7 @@ struct sg_table *drm_prime_pages_to_sg(struct drm_device *dev, > struct page **pages, unsigned int nr_pages) > { > struct sg_table *sg = NULL; > + struct scatterlist *sl; > size_t max_segment = 0; > int ret; > > @@ -820,11 +821,13 @@ struct sg_table *drm_prime_pages_to_sg(struct drm_device *dev, > max_segment = dma_max_mapping_size(dev->dev); > if (max_segment == 0 || max_segment > SCATTERLIST_MAX_SEGMENT) > max_segment = SCATTERLIST_MAX_SEGMENT; > - ret = __sg_alloc_table_from_pages(sg, pages, nr_pages, 0, > + sl = __sg_alloc_table_from_pages(sg, pages, nr_pages, 0, > nr_pages << PAGE_SHIFT, > - max_segment, GFP_KERNEL); > - if (ret) > + max_segment, NULL, 0, GFP_KERNEL); > + if (IS_ERR(sl)) { > + ret = PTR_ERR(sl); > goto out; > + } > > return sg; > out: This looks OK to me, thanks Jason