diff options
| author | Mikko Perttunen <mperttunen@nvidia.com> | 2026-07-10 16:14:31 +0900 |
|---|---|---|
| committer | Thierry Reding <treding@nvidia.com> | 2026-10-02 00:47:20 +0200 |
| commit | 6eb92f5520b8c0b97c3317f622a2b69bcde75395 (patch) | |
| tree | 33248060a38f4e5dbe4caf903449470400453202 /scripts/Makefile.thinlto | |
| parent | 8966f52b9c1802cdd5d4a5461074578aa5ac5eb1 (diff) | |
| download | linux-6eb92f5520b8c0b97c3317f622a2b69bcde75395.tar.gz linux-6eb92f5520b8c0b97c3317f622a2b69bcde75395.zip | |
gpu: host1x: Memory context stealing
Currently, each process holding an open TegraDRM channel reserves for
itself one of the limited number of hardware memory contexts. Attempting
to allocate a channel when all contexts are in use results in failure.
While we cannot have more contexts than the hardware supports in active
use, idle channels don't necessarily need to have a backing memory
context. As such, in this patch, we add another layer to allow hardware
memory contexts to be "stolen away" by channels that are in active use,
from idle processes.
The way this is implemented, is by keeping track of memory mappings on
each abstracted memory context. If we need to steal that memory
context's backing hardware context, we unmap everything from it and give
it away. When that abstracted memory context is needed again
(re-activated), we attempt to allocate or steal another hardware context
and re-map the previously unmapped buffers.
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patch.msgid.link/20260710-b4-host1x-ctxsteal-v1-1-b1f8f6b37cc5@nvidia.com
Diffstat (limited to 'scripts/Makefile.thinlto')
0 files changed, 0 insertions, 0 deletions
