Quoting Matthew Auld (2020-12-02 16:40:36) > On Wed, 2 Dec 2020 at 15:51, Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> 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 <chris@xxxxxxxxxxxxxxxxxx> > > Cc: Niranjana Vishwanathapura <niranjana.vishwanathapura@xxxxxxxxx> > > Cc: Matthew Auld <matthew.auld@xxxxxxxxx> > > --- > > + 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@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx