]> git.baikalelectronics.ru Git - kernel.git/commit
drm/nouveau: avoid GPU page sizes > PAGE_SIZE for buffer objects in host memory
authorBen Skeggs <bskeggs@redhat.com>
Thu, 7 Dec 2017 05:25:14 +0000 (15:25 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Tue, 19 Dec 2017 00:16:37 +0000 (10:16 +1000)
commitfab409f662c0ea2bb102932e5deba16129789192
tree18f3df91ddc6250c30407fb15d49bddd21a1392d
parent7a0f7d2b1511a0e182ac0c8f7700002c18242159
drm/nouveau: avoid GPU page sizes > PAGE_SIZE for buffer objects in host memory

While the Tegra (GK20A, GM20B, GP10B) MMUs support large pages in host
memory, we're currently lacking IOMMU support for merging system pages
into large enough chunks to be mapped as such by the GPU.

The core VMM code actually supports automatically determining the best
page size to map with, which is intended for these situations, but for
various complicated reasons the DRM is currently forcing the page size
selection on a per-BO basis.

This should fix breakage reported on Tegra GPUs in the meantime, until
one or both of the above issues are resolved properly.

Reported-by: Mikko Perttunen <cyndis@kapsi.fi>
Fixes: 72b5981373cc ("drm/nouveau: improve selection of GPU page size")
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Tested-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/nouveau/nouveau_bo.c