Quoting Matthew Auld (2020-12-02 16:40:36)
> On Wed, 2 Dec 2020 at 15:51, Chris Wilson <ch...@chris-wilson.co.uk> wrote:
> >
> > Mixing I915_ALLOC_CONTIGUOUS and I915_ALLOC_MAX_SEGMENT_SIZE fared
> > badly. The two directives conflict, with the contiguous request setting
> > the min_order to the full size of the object, and the max-segment-size
> > setting the max_order to the limit of the DMA mapper, resulting in a
> > situation where max_order < min_order, causing our sanity checks to
> > fail.
> >
> > Instead of limiting the buddy block size, in the previous patch we split
> > the oversized buddy into multiple scatterlist elements.
> >
> > Fixes: d2cf0125d4a1 ("drm/i915/lmem: Limit block size to 4G")
> > Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
> > Cc: Niranjana Vishwanathapura <niranjana.vishwanathap...@intel.com>
> > Cc: Matthew Auld <matthew.a...@intel.com>
> > ---
> > +       for (sg = obj->mm.pages->sgl; sg; sg = sg_next(sg)) {
> > +               if (sg->length > max_segment) {
> > +                       pr_err("%s: Created an oversized scatterlist entry, 
> > %u > %u\n",
> > +                              __func__, sg->length, max_segment);
> 
> err = -EINVAL;

Indeed. Thanks,
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to