[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <14677b6975162c59f5bfbe71aec52f9078ae6f64.camel@pengutronix.de>
Date: Fri, 25 Oct 2024 10:06:31 +0200
From: Lucas Stach <l.stach@...gutronix.de>
To: Sui Jingfeng <sui.jingfeng@...ux.dev>, Russell King
<linux+etnaviv@...linux.org.uk>, Christian Gmeiner
<christian.gmeiner@...il.com>
Cc: David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>,
etnaviv@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/3] Fix GPU virtual address collosion when CPU page
size != GPU page size
Hi Sui,
Am Samstag, dem 05.10.2024 um 03:42 +0800 schrieb Sui Jingfeng:
> Etnaviv assumes that GPU page size is 4KiB, however, when using
> softpin capable GPUs on a different CPU page size configuration.
> Userspace still doing the allocation with 4KiB page as unit. This
> results in userspace allocated GPU virtual address ranges collision
> and therefore unable to be inserted to the specified hole exactly.
>
> The root cause is that kernel side BO takes up bigger address space
> than userspace assumes when the size of it is not CPU page size aligned.
>
> To solve it with no GPU VA range space wasting, we first track the size
> of a buffer that userspace/GPU think of it is, then partially map and/or
> unmap the tail physical page with respect to this 'user size'. Ensure
> that GPU VA is fully mapped and/or unmapped.
>
Would you be able to get me a updated series with the feedback taken
care of? I would like to add this series to the next upstream pull
request, if possible.
Regards,
Lucas
> Sui Jingfeng (3):
> drm/etnaviv: Track GPU VA size separately
> drm/etnaviv: Map and unmap the GPU VA range with respect to its user
> size
> drm/etnaviv: Print an error message if inserting IOVA range fails
>
> drivers/gpu/drm/etnaviv/etnaviv_gem.c | 8 +++--
> drivers/gpu/drm/etnaviv/etnaviv_gem.h | 1 +
> drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 42 ++++++++++++---------------
> 3 files changed, 24 insertions(+), 27 deletions(-)
>
Powered by blists - more mailing lists