drm/i915: Mark up GTT sizes as u64
Since we use a 64b virtual GTT irrespective of the system, we want to ensure that the GTT computations remains 64b even on 32b systems, including treatment of huge virtual pages. No code generation changes on 64b: Reported-by: Sergii Romantsov <sergii.romantsov@globallogic.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108282 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: stable@vger.kernel.org Reviewed-by: Matthew Auld <matthew.auld@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20181025091823.20571-1-chris@chris-wilson.co.uk
Šī revīzija ir iekļauta:
@@ -551,7 +551,7 @@ static int igt_mock_ppgtt_misaligned_dma(void *arg)
|
||||
err = igt_check_page_sizes(vma);
|
||||
|
||||
if (vma->page_sizes.gtt != I915_GTT_PAGE_SIZE_4K) {
|
||||
pr_err("page_sizes.gtt=%u, expected %lu\n",
|
||||
pr_err("page_sizes.gtt=%u, expected %llu\n",
|
||||
vma->page_sizes.gtt, I915_GTT_PAGE_SIZE_4K);
|
||||
err = -EINVAL;
|
||||
}
|
||||
|
@@ -1337,7 +1337,7 @@ static int igt_gtt_reserve(void *arg)
|
||||
GEM_BUG_ON(!drm_mm_node_allocated(&vma->node));
|
||||
if (vma->node.start != total ||
|
||||
vma->node.size != 2*I915_GTT_PAGE_SIZE) {
|
||||
pr_err("i915_gem_gtt_reserve (pass 1) placement failed, found (%llx + %llx), expected (%llx + %lx)\n",
|
||||
pr_err("i915_gem_gtt_reserve (pass 1) placement failed, found (%llx + %llx), expected (%llx + %llx)\n",
|
||||
vma->node.start, vma->node.size,
|
||||
total, 2*I915_GTT_PAGE_SIZE);
|
||||
err = -EINVAL;
|
||||
@@ -1386,7 +1386,7 @@ static int igt_gtt_reserve(void *arg)
|
||||
GEM_BUG_ON(!drm_mm_node_allocated(&vma->node));
|
||||
if (vma->node.start != total ||
|
||||
vma->node.size != 2*I915_GTT_PAGE_SIZE) {
|
||||
pr_err("i915_gem_gtt_reserve (pass 2) placement failed, found (%llx + %llx), expected (%llx + %lx)\n",
|
||||
pr_err("i915_gem_gtt_reserve (pass 2) placement failed, found (%llx + %llx), expected (%llx + %llx)\n",
|
||||
vma->node.start, vma->node.size,
|
||||
total, 2*I915_GTT_PAGE_SIZE);
|
||||
err = -EINVAL;
|
||||
@@ -1430,7 +1430,7 @@ static int igt_gtt_reserve(void *arg)
|
||||
GEM_BUG_ON(!drm_mm_node_allocated(&vma->node));
|
||||
if (vma->node.start != offset ||
|
||||
vma->node.size != 2*I915_GTT_PAGE_SIZE) {
|
||||
pr_err("i915_gem_gtt_reserve (pass 3) placement failed, found (%llx + %llx), expected (%llx + %lx)\n",
|
||||
pr_err("i915_gem_gtt_reserve (pass 3) placement failed, found (%llx + %llx), expected (%llx + %llx)\n",
|
||||
vma->node.start, vma->node.size,
|
||||
offset, 2*I915_GTT_PAGE_SIZE);
|
||||
err = -EINVAL;
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user