* [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
@ 2018-06-28 10:51 Chris Wilson
2018-06-28 11:06 ` Maarten Lankhorst
0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2018-06-28 10:51 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
drm_atomic_helper allows for up to one outstanding cleanup task to be in
flight before a new modeset (see stall_commit in stall_checks()), In
lieu of hooking up a debugfs to force flushing of the outstanding work,
submit enough blocking modesets to ensure that the pending work is
completed before continuing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
---
tests/kms_universal_plane.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index 58f329e68..f875fd194 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
igt_plane_set_fb(primary, NULL);
igt_plane_set_fb(cursor, NULL);
igt_display_commit2(display, COMMIT_LEGACY);
+ igt_display_commit2(display, COMMIT_LEGACY);
cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
/* We should be back to the same framebuffer count as when we started */
--
2.18.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
2018-06-28 10:51 [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups Chris Wilson
@ 2018-06-28 11:06 ` Maarten Lankhorst
2018-06-28 11:16 ` Chris Wilson
0 siblings, 1 reply; 6+ messages in thread
From: Maarten Lankhorst @ 2018-06-28 11:06 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
Op 28-06-18 om 12:51 schreef Chris Wilson:
> drm_atomic_helper allows for up to one outstanding cleanup task to be in
> flight before a new modeset (see stall_commit in stall_checks()), In
> lieu of hooking up a debugfs to force flushing of the outstanding work,
> submit enough blocking modesets to ensure that the pending work is
> completed before continuing.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> ---
> tests/kms_universal_plane.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
> index 58f329e68..f875fd194 100644
> --- a/tests/kms_universal_plane.c
> +++ b/tests/kms_universal_plane.c
> @@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> igt_plane_set_fb(primary, NULL);
> igt_plane_set_fb(cursor, NULL);
> igt_display_commit2(display, COMMIT_LEGACY);
> + igt_display_commit2(display, COMMIT_LEGACY);
> cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
>
> /* We should be back to the same framebuffer count as when we started */
This won't work, we won't commit anything without anything changed, probably best to put the set_fb in the loop too.
Testcase: kms_universal_plane@cursor-fb-leak-*
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
2018-06-28 11:06 ` Maarten Lankhorst
@ 2018-06-28 11:16 ` Chris Wilson
2018-06-28 11:25 ` Maarten Lankhorst
0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2018-06-28 11:16 UTC (permalink / raw)
To: Maarten Lankhorst, intel-gfx; +Cc: igt-dev
Quoting Maarten Lankhorst (2018-06-28 12:06:35)
> Op 28-06-18 om 12:51 schreef Chris Wilson:
> > drm_atomic_helper allows for up to one outstanding cleanup task to be in
> > flight before a new modeset (see stall_commit in stall_checks()), In
> > lieu of hooking up a debugfs to force flushing of the outstanding work,
> > submit enough blocking modesets to ensure that the pending work is
> > completed before continuing.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> > ---
> > tests/kms_universal_plane.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
> > index 58f329e68..f875fd194 100644
> > --- a/tests/kms_universal_plane.c
> > +++ b/tests/kms_universal_plane.c
> > @@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> > igt_plane_set_fb(primary, NULL);
> > igt_plane_set_fb(cursor, NULL);
> > igt_display_commit2(display, COMMIT_LEGACY);
> > + igt_display_commit2(display, COMMIT_LEGACY);
> > cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
> >
> > /* We should be back to the same framebuffer count as when we started */
>
> This won't work, we won't commit anything without anything changed, probably best to put the set_fb in the loop too.
Fill in the details above. :-p
Is that igt or the kernel? I have this belief that when I ask it to do
something, it should ;)
igt_display_commit3(display, COMMIT_LEGACY, DOIT);
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
2018-06-28 11:16 ` Chris Wilson
@ 2018-06-28 11:25 ` Maarten Lankhorst
2018-06-28 11:34 ` Chris Wilson
0 siblings, 1 reply; 6+ messages in thread
From: Maarten Lankhorst @ 2018-06-28 11:25 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
Op 28-06-18 om 13:16 schreef Chris Wilson:
> Quoting Maarten Lankhorst (2018-06-28 12:06:35)
>> Op 28-06-18 om 12:51 schreef Chris Wilson:
>>> drm_atomic_helper allows for up to one outstanding cleanup task to be in
>>> flight before a new modeset (see stall_commit in stall_checks()), In
>>> lieu of hooking up a debugfs to force flushing of the outstanding work,
>>> submit enough blocking modesets to ensure that the pending work is
>>> completed before continuing.
>>>
>>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>>> ---
>>> tests/kms_universal_plane.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
>>> index 58f329e68..f875fd194 100644
>>> --- a/tests/kms_universal_plane.c
>>> +++ b/tests/kms_universal_plane.c
>>> @@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>>> igt_plane_set_fb(primary, NULL);
>>> igt_plane_set_fb(cursor, NULL);
>>> igt_display_commit2(display, COMMIT_LEGACY);
>>> + igt_display_commit2(display, COMMIT_LEGACY);
>>> cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
>>>
>>> /* We should be back to the same framebuffer count as when we started */
>> This won't work, we won't commit anything without anything changed, probably best to put the set_fb in the loop too.
> Fill in the details above. :-p
>
> Is that igt or the kernel? I have this belief that when I ask it to do
> something, it should ;)
>
> igt_display_commit3(display, COMMIT_LEGACY, DOIT);
> -Chris
But you didn't tell it to do anything, nothing changed from last commit, so nothing gets committed.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
2018-06-28 11:25 ` Maarten Lankhorst
@ 2018-06-28 11:34 ` Chris Wilson
2018-06-28 11:39 ` Maarten Lankhorst
0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2018-06-28 11:34 UTC (permalink / raw)
To: Maarten Lankhorst, intel-gfx; +Cc: igt-dev
Quoting Maarten Lankhorst (2018-06-28 12:25:18)
> Op 28-06-18 om 13:16 schreef Chris Wilson:
> > Quoting Maarten Lankhorst (2018-06-28 12:06:35)
> >> Op 28-06-18 om 12:51 schreef Chris Wilson:
> >>> drm_atomic_helper allows for up to one outstanding cleanup task to be in
> >>> flight before a new modeset (see stall_commit in stall_checks()), In
> >>> lieu of hooking up a debugfs to force flushing of the outstanding work,
> >>> submit enough blocking modesets to ensure that the pending work is
> >>> completed before continuing.
> >>>
> >>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> >>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> >>> ---
> >>> tests/kms_universal_plane.c | 1 +
> >>> 1 file changed, 1 insertion(+)
> >>>
> >>> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
> >>> index 58f329e68..f875fd194 100644
> >>> --- a/tests/kms_universal_plane.c
> >>> +++ b/tests/kms_universal_plane.c
> >>> @@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> >>> igt_plane_set_fb(primary, NULL);
> >>> igt_plane_set_fb(cursor, NULL);
> >>> igt_display_commit2(display, COMMIT_LEGACY);
> >>> + igt_display_commit2(display, COMMIT_LEGACY);
> >>> cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
> >>>
> >>> /* We should be back to the same framebuffer count as when we started */
> >> This won't work, we won't commit anything without anything changed, probably best to put the set_fb in the loop too.
> > Fill in the details above. :-p
> >
> > Is that igt or the kernel? I have this belief that when I ask it to do
> > something, it should ;)
> >
> > igt_display_commit3(display, COMMIT_LEGACY, DOIT);
> > -Chris
>
> But you didn't tell it to do anything, nothing changed from last commit, so nothing gets committed.
But I want it to reapply the commit I built up. That's how I think of
it, since I'm used to a stateless API.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups
2018-06-28 11:34 ` Chris Wilson
@ 2018-06-28 11:39 ` Maarten Lankhorst
0 siblings, 0 replies; 6+ messages in thread
From: Maarten Lankhorst @ 2018-06-28 11:39 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
Op 28-06-18 om 13:34 schreef Chris Wilson:
> Quoting Maarten Lankhorst (2018-06-28 12:25:18)
>> Op 28-06-18 om 13:16 schreef Chris Wilson:
>>> Quoting Maarten Lankhorst (2018-06-28 12:06:35)
>>>> Op 28-06-18 om 12:51 schreef Chris Wilson:
>>>>> drm_atomic_helper allows for up to one outstanding cleanup task to be in
>>>>> flight before a new modeset (see stall_commit in stall_checks()), In
>>>>> lieu of hooking up a debugfs to force flushing of the outstanding work,
>>>>> submit enough blocking modesets to ensure that the pending work is
>>>>> completed before continuing.
>>>>>
>>>>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>>>>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>>>>> ---
>>>>> tests/kms_universal_plane.c | 1 +
>>>>> 1 file changed, 1 insertion(+)
>>>>>
>>>>> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
>>>>> index 58f329e68..f875fd194 100644
>>>>> --- a/tests/kms_universal_plane.c
>>>>> +++ b/tests/kms_universal_plane.c
>>>>> @@ -638,6 +638,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>>>>> igt_plane_set_fb(primary, NULL);
>>>>> igt_plane_set_fb(cursor, NULL);
>>>>> igt_display_commit2(display, COMMIT_LEGACY);
>>>>> + igt_display_commit2(display, COMMIT_LEGACY);
>>>>> cursor_leak_test_fini(data, output, &background_fb, cursor_fb);
>>>>>
>>>>> /* We should be back to the same framebuffer count as when we started */
>>>> This won't work, we won't commit anything without anything changed, probably best to put the set_fb in the loop too.
>>> Fill in the details above. :-p
>>>
>>> Is that igt or the kernel? I have this belief that when I ask it to do
>>> something, it should ;)
>>>
>>> igt_display_commit3(display, COMMIT_LEGACY, DOIT);
>>> -Chris
>> But you didn't tell it to do anything, nothing changed from last commit, so nothing gets committed.
> But I want it to reapply the commit I built up. That's how I think of
> it, since I'm used to a stateless API.
> -Chris
But there's nothing to apply, the commit is already applied.
That's how the api has always worked, at least. :)
~Maarten
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-06-28 11:39 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-28 10:51 [PATCH i-g-t] igt/kms_universal_plane: Flush pending cleanups Chris Wilson
2018-06-28 11:06 ` Maarten Lankhorst
2018-06-28 11:16 ` Chris Wilson
2018-06-28 11:25 ` Maarten Lankhorst
2018-06-28 11:34 ` Chris Wilson
2018-06-28 11:39 ` Maarten Lankhorst
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox