[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a71371c5-8b56-a8a6-64eb-180180edfb89@linux.intel.com>
Date: Fri, 22 Jul 2022 11:13:59 +0100
From: Tvrtko Ursulin <tvrtko.ursulin@...ux.intel.com>
To: Christoph Hellwig <hch@....de>
Cc: Robert Beckett <bob.beckett@...labora.com>,
Jani Nikula <jani.nikula@...ux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>, kernel@...labora.com,
Thomas Hellstrom <thomas.hellstrom@...el.com>,
Matthew Auld <matthew.auld@...el.com>,
intel-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drm/i915: stop using swiotlb
On 22/07/2022 10:58, Christoph Hellwig wrote:
> On Fri, Jul 22, 2022 at 10:45:54AM +0100, Tvrtko Ursulin wrote:
>>> - unsigned int size = swiotlb_max_segment();
>>> -
>>> - if (size == 0)
>>> - size = UINT_MAX;
>>
>> On a more detailed look, there was a CI failure which makes me think this
>> cap might need to stay. Because max sg segment is unsigned int. So I wonder
>> if sg contstruction overflows without it.
>>
>> If this quick analysis is right, you could leave i915_sg_segment_size
>> helper and cap the return from dma_max_mapping_size to UINT_MAX in it.
>
> As dma_max_mapping_size retuns a size_t it would be good to make
> all variables using it a size_t as well. In places where that gets
> lower to an unsigned int your probably want this cap.
Yep. Problem we have is struct scatterlist length field, which is
unsigned int, since all our backing storage handling is built on top of
it. Therefore I think capping in this helper should be good.
Regards,
Tvrtko
Powered by blists - more mailing lists