All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Use discardable buffers for rings
@ 2017-04-20 10:17 Chris Wilson
  2017-04-20 10:22 ` Joonas Lahtinen
  2017-04-20 10:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
  0 siblings, 2 replies; 4+ messages in thread
From: Chris Wilson @ 2017-04-20 10:17 UTC (permalink / raw)
  To: intel-gfx

The contents of a ring are only valid between HEAD and TAIL, when the
ring is idle (HEAD == TAIL) we can simply let the pages go under memory
pressue if they are not pinned by an active context. And new content
will be written and so the ring will again be valid between HEAD and
TAIL, everything outside can be discarded.

Note that we take care of ensuring that we do not reset the HEAD
backwards following a GPU hang on an idle ring.

The same precautions are what enable us to use stolen memory for rings.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 7d2e5df61028..0cfffc9b4e8f 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -1165,7 +1165,7 @@ intel_ring_create_vma(struct drm_i915_private *dev_priv, int size)
 
 	obj = i915_gem_object_create_stolen(dev_priv, size);
 	if (!obj)
-		obj = i915_gem_object_create(dev_priv, size);
+		obj = i915_gem_object_create_internal(dev_priv, size);
 	if (IS_ERR(obj))
 		return ERR_CAST(obj);
 
-- 
2.11.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm/i915: Use discardable buffers for rings
  2017-04-20 10:17 [PATCH] drm/i915: Use discardable buffers for rings Chris Wilson
@ 2017-04-20 10:22 ` Joonas Lahtinen
  2017-04-20 10:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
  1 sibling, 0 replies; 4+ messages in thread
From: Joonas Lahtinen @ 2017-04-20 10:22 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On to, 2017-04-20 at 11:17 +0100, Chris Wilson wrote:
> The contents of a ring are only valid between HEAD and TAIL, when the
> ring is idle (HEAD == TAIL) we can simply let the pages go under memory
> pressue if they are not pinned by an active context. And new content
> will be written and so the ring will again be valid between HEAD and
> TAIL, everything outside can be discarded.
> 
> Note that we take care of ensuring that we do not reset the HEAD
> backwards following a GPU hang on an idle ring.
> 
> The same precautions are what enable us to use stolen memory for rings.
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

Regards, Joonas
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: Use discardable buffers for rings
  2017-04-20 10:17 [PATCH] drm/i915: Use discardable buffers for rings Chris Wilson
  2017-04-20 10:22 ` Joonas Lahtinen
@ 2017-04-20 10:49 ` Patchwork
  2017-04-20 11:33   ` Chris Wilson
  1 sibling, 1 reply; 4+ messages in thread
From: Patchwork @ 2017-04-20 10:49 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Use discardable buffers for rings
URL   : https://patchwork.freedesktop.org/series/23274/
State : failure

== Summary ==

Series 23274v1 drm/i915: Use discardable buffers for rings
https://patchwork.freedesktop.org/api/1.0/series/23274/revisions/1/mbox/

Test gem_exec_flush:
        Subgroup basic-batch-kernel-default-uc:
                pass       -> FAIL       (fi-snb-2600) fdo#100007
Test gem_exec_suspend:
        Subgroup basic-s4-devices:
                dmesg-warn -> PASS       (fi-snb-2600) fdo#100125
                pass       -> DMESG-WARN (fi-kbl-7560u) fdo#100125
Test kms_cursor_legacy:
        Subgroup basic-busy-flip-before-cursor-atomic:
                pass       -> FAIL       (fi-snb-2600)
Test pm_rpm:
        Subgroup basic-rte:
                incomplete -> PASS       (fi-bsw-n3050) fdo#100718

fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007
fdo#100125 https://bugs.freedesktop.org/show_bug.cgi?id=100125
fdo#100718 https://bugs.freedesktop.org/show_bug.cgi?id=100718

fi-bdw-5557u     total:278  pass:267  dwarn:0   dfail:0   fail:0   skip:11  time:434s
fi-bdw-gvtdvm    total:278  pass:256  dwarn:8   dfail:0   fail:0   skip:14  time:426s
fi-bsw-n3050     total:278  pass:242  dwarn:0   dfail:0   fail:0   skip:36  time:570s
fi-bxt-j4205     total:278  pass:259  dwarn:0   dfail:0   fail:0   skip:19  time:508s
fi-bxt-t5700     total:278  pass:258  dwarn:0   dfail:0   fail:0   skip:20  time:550s
fi-byt-j1900     total:278  pass:254  dwarn:0   dfail:0   fail:0   skip:24  time:497s
fi-byt-n2820     total:278  pass:250  dwarn:0   dfail:0   fail:0   skip:28  time:477s
fi-hsw-4770      total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16  time:411s
fi-hsw-4770r     total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16  time:410s
fi-ilk-650       total:278  pass:228  dwarn:0   dfail:0   fail:0   skip:50  time:429s
fi-ivb-3520m     total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18  time:495s
fi-ivb-3770      total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18  time:486s
fi-kbl-7500u     total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18  time:459s
fi-kbl-7560u     total:278  pass:267  dwarn:1   dfail:0   fail:0   skip:10  time:567s
fi-skl-6260u     total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10  time:454s
fi-skl-6700hq    total:278  pass:261  dwarn:0   dfail:0   fail:0   skip:17  time:577s
fi-skl-6700k     total:278  pass:256  dwarn:4   dfail:0   fail:0   skip:18  time:460s
fi-skl-6770hq    total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10  time:494s
fi-skl-gvtdvm    total:278  pass:265  dwarn:0   dfail:0   fail:0   skip:13  time:432s
fi-snb-2520m     total:278  pass:250  dwarn:0   dfail:0   fail:0   skip:28  time:531s
fi-snb-2600      total:278  pass:247  dwarn:0   dfail:0   fail:2   skip:29  time:400s

2fe165cbf4b2287276f03e607d17341119203d9d drm-tip: 2017y-04m-20d-09h-46m-54s UTC integration manifest
886e8ea drm/i915: Use discardable buffers for rings

== Logs ==

For more details see: https://intel-gfx-ci.01.org/CI/Patchwork_4524/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ✗ Fi.CI.BAT: failure for drm/i915: Use discardable buffers for rings
  2017-04-20 10:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2017-04-20 11:33   ` Chris Wilson
  0 siblings, 0 replies; 4+ messages in thread
From: Chris Wilson @ 2017-04-20 11:33 UTC (permalink / raw)
  To: intel-gfx

On Thu, Apr 20, 2017 at 10:49:37AM -0000, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915: Use discardable buffers for rings
> URL   : https://patchwork.freedesktop.org/series/23274/
> State : failure
> 
> == Summary ==
> 
> Series 23274v1 drm/i915: Use discardable buffers for rings
> https://patchwork.freedesktop.org/api/1.0/series/23274/revisions/1/mbox/
> 
> Test gem_exec_flush:
>         Subgroup basic-batch-kernel-default-uc:
>                 pass       -> FAIL       (fi-snb-2600) fdo#100007
> Test gem_exec_suspend:
>         Subgroup basic-s4-devices:
>                 dmesg-warn -> PASS       (fi-snb-2600) fdo#100125
>                 pass       -> DMESG-WARN (fi-kbl-7560u) fdo#100125
> Test kms_cursor_legacy:
>         Subgroup basic-busy-flip-before-cursor-atomic:
>                 pass       -> FAIL       (fi-snb-2600)
> Test pm_rpm:
>         Subgroup basic-rte:
>                 incomplete -> PASS       (fi-bsw-n3050) fdo#100718
> 
> fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007
> fdo#100125 https://bugs.freedesktop.org/show_bug.cgi?id=100125
> fdo#100718 https://bugs.freedesktop.org/show_bug.cgi?id=100718

Looks scarier than it actually was. Fixed my typos in the commitmsg and
pushed. Thanks for the review, I thought we had been using internal for
rings ever since we added the internal allocator (that was one of the
intended use cases for the allocator).
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-04-20 11:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-20 10:17 [PATCH] drm/i915: Use discardable buffers for rings Chris Wilson
2017-04-20 10:22 ` Joonas Lahtinen
2017-04-20 10:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
2017-04-20 11:33   ` Chris Wilson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.