Re: [Intel-gfx] [PATCH 08/39] drm/i915/gt: Show engine properties in the pretty printer

2020-08-27 Thread Mika Kuoppala
l_ms: 2500 [default 2500] > max_busywait_duration_ns: 8000 [default 8000] > preempt_timeout_ms: 640 [default 640] > stop_timeout_ms: 100 [default 100] > timeslice_duration_ms: 1 [default 1] > > Suggested-by: Joonas Lahtinen > Signed-off-by: Chris Wilso

Re: [Intel-gfx] [PATCH] drm/i915: Break up error capture compression loops with cond_resched()

2020-08-24 Thread Mika Kuoppala
lockups) and also serve as a > warning should we try to make this loop atomic in the future. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: sta...@vger.kernel.org Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/i915_gpu_error.c | 3 +++ > 1 file chang

[Intel-gfx] [PATCH] drm/i915: Fix cmd parser desc matching with masks

2020-08-17 Thread Mika Kuoppala
ris Wilson Signed-off-by: Mika Kuoppala --- drivers/gpu/drm/i915/i915_cmd_parser.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_cmd_parser.c b/drivers/gpu/drm/i915/i915_cmd_parser.c index 372354d33f55..5ac4a999f05a 100644 --- a/d

[Intel-gfx] [PATCH] drm/i915: Fix cmd parser desc matching with masks

2020-08-17 Thread Mika Kuoppala
commands. References: 926abff21a8f ("drm/i915/cmdparser: Ignore Length operands during command matching") Reported-by: Nicolai Stange Cc: sta...@vger.kernel.org # v5.4+ Cc: Miroslav Benes Cc: Takashi Iwai Cc: Tyler Hicks Cc: Jon Bloomfield Cc: Chris Wilson Signed-off-by: Mik

Re: [Intel-gfx] [PATCH 3/3] drm/i915/gt: Apply the CSB w/a for all

2020-08-17 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Chris Wilson (2020-08-14 20:41:32) >> Quoting Mika Kuoppala (2020-08-14 19:41:14) >> > Chris Wilson writes: >> > > - entry = READ_ONCE(*csb); >> > > - if (unlikely(entry == -1)) { >> > > -

Re: [Intel-gfx] [PATCH 3/3] drm/i915/gt: Apply the CSB w/a for all

2020-08-14 Thread Mika Kuoppala
that was not covered by our > previous w/a. > > References: d8f505311717 ("drm/i915/icl: Forcibly evict stale csb entries") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: Bruce Chang > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 70 +--

Re: [Intel-gfx] [PATCH 1/3] drm/i915/gt: Widen CSB pointer to u64 for the parsers

2020-08-14 Thread Mika Kuoppala
Chris Wilson writes: > A CSB entry is 64b, and it is simpler for us to treat it as an array of > 64b entries than as an array of pairs of 32b entries. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_engine_types.h | 2 +- >

Re: [Intel-gfx] [PATCH] drm/i915: Reduce register reads around GT interrupts

2020-07-27 Thread Mika Kuoppala
rcs0: 10132462 cycles, 1.974us > bcs0: 3667130 cycles, 5.454us > vcs0: 3616618 cycles, 5.530us > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: Ville Syrjälä Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/i915_irq.c | 58 +--

Re: [Intel-gfx] [PATCH] drm/i915/gem: Delay tracking the GEM context until it is registered

2020-07-24 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-07-24 12:55:39) >> Chris Wilson writes: >> >> > Quoting Chris Wilson (2020-07-23 19:33:48) >> >> Avoid exposing a partially constructed context by deferring the >> >> list_add() from the

Re: [Intel-gfx] [PATCH 2/3] drm/i915/gt: Stall around xcs invalidations on tgl

2020-07-24 Thread Mika Kuoppala
reedesktop.org/drm/intel/-/issues/2169 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 18 -- > 1 file changed, 12 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c > b/d

Re: [Intel-gfx] [PATCH 3/3] drm/i915/selftests: Add compiler paranoia for checking HWSP values

2020-07-24 Thread Mika Kuoppala
Chris Wilson writes: > Since we want to read the values from the HWSP as written to by the GPU, > warn the compiler that the values are volatile. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/sel

Re: [Intel-gfx] [PATCH] drm/i915/gem: Delay tracking the GEM context until it is registered

2020-07-24 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Chris Wilson (2020-07-23 19:33:48) >> Avoid exposing a partially constructed context by deferring the >> list_add() from the initial construction to the end of registration. >> Otherwise, if we peek into the list of contexts from inside debugfs, we >> may see the pa

Re: [Intel-gfx] [PATCH] drm/i915/gt: Stall around xcs invalidations on tgl

2020-07-24 Thread Mika Kuoppala
reedesktop.org/drm/intel/-/issues/2169 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 18 -- > 1 file changed, 12 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c > b/d

Re: [Intel-gfx] [PATCH 1/2] drm/i915/gt: Disable preparser around xcs invalidations on tgl

2020-07-24 Thread Mika Kuoppala
ntial. Let's apply the > preparser disable between batches as we invalidate the TLB as a dose of > healthy paranoia, just in case. > > References: https://gitlab.freedesktop.org/drm/intel/-/issues/2169 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala

Re: [Intel-gfx] [PATCH] drm/i915: Remove gen check before calling intel_rps_boost

2020-07-23 Thread Mika Kuoppala
Chris Wilson writes: > It's been a while since gen6_rps_boost() [that only worked on gen6+] was > replaced by intel_rps_boost() that understood itself when rps was > active. Since the intel_rps_boost() is gen-agnostic, just call it. > > Signed-off-by: Chris Wilson Review

Re: [Intel-gfx] [PATCH 2/2] drm/i915/gt: Wait for aux invalidation on Tigerlake

2020-07-17 Thread Mika Kuoppala
Chris Wilson writes: > Add a SRM read back of the aux invalidation register after poking > hsdes: 1809175790, as failing to do so leads to writes going astray. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2169 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala

Re: [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Add compiler paranoia for checking HWSP values

2020-07-17 Thread Mika Kuoppala
Chris Wilson writes: > Since we want to read the values from the HWSP as written to by the GPU, > warn the compiler that the values are volatile. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Yes, for consistency (and accuracy) this should be nudged also, even tho it is o

Re: [Intel-gfx] [PATCH 10/66] drm/i915: Soften the tasklet flush frequency before waits

2020-07-16 Thread Mika Kuoppala
no result. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/i915_request.c | 20 ++-- > 1 file changed, 18 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_reque

Re: [Intel-gfx] [PATCH] drm/i915/selftests: Mock the status_page.vma for the kernel_context

2020-07-16 Thread Mika Kuoppala
Chris Wilson writes: > Since we assert that the kernel_context is using the perma-pinned HWSP, > make it so. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/mock_engine.c | 3 +++ > 1 file changed,

Re: [Intel-gfx] [PATCH] drm/i915/gt: Trace placement of timeline HWSP

2020-07-15 Thread Mika Kuoppala
Chris Wilson writes: > Track the position of the HWSP for each timeline. > > References: https://gitlab.freedesktop.org/drm/intel/-/issues/2169 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_timeline.c| 7 +++ >

Re: [Intel-gfx] [PATCH] drm/i915/gt: Free stale request on destroying the virtual engine

2020-07-13 Thread Mika Kuoppala
Chris Wilson writes: > Since preempt-to-busy, we may unsubmit a request while it is still on > the HW and completes asynchronously. That means it may be retired and in > the process destroy the virtual engine (as the user has closed their > context), but that engine may still be holding onto the

Re: [Intel-gfx] [PATCH] drm/i915/gt: Always reset the engine, even if inactive, on execlists failure

2020-07-13 Thread Mika Kuoppala
ng is active. > > Signed-off-by: Chris Wilson > Cc: Tvrtko Ursulin Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 15 ++- > 1 file changed, 6 insertions(+), 9 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c

Re: [Intel-gfx] [PATCH 04/33] drm/i915/gt: Check for a completed last request once

2020-07-02 Thread Mika Kuoppala
Chris Wilson writes: > Pull the repeated check for the last active request being completed to a > single spot, when deciding whether or not execlist preemption is > required. > > Signed-off-by: Chris Wilson > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 14 -- > 1 file changed, 4 ins

Re: [Intel-gfx] [PATCH 01/33] drm/i915/gt: Harden the heartbeat against a stuck driver

2020-07-02 Thread Mika Kuoppala
engine->name); > + goto out; > + } This should do the trick. I was worried on the submit signal (fence) block being empty above in this function that what happens if we never manage to submit. But this should cover that case also. Reviewed-by: Mika

Re: [Intel-gfx] [PATCH 02/33] drm/i915/gt: Move the heartbeat into the highprio system wq

2020-07-02 Thread Mika Kuoppala
References: https://gitlab.freedesktop.org/drm/intel/-/issues/2119 > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_eng

Re: [Intel-gfx] [PATCH] drm/i915: Skip stale object handle for debugfs per-file-stats

2020-06-30 Thread Mika Kuoppala
Chris Wilson writes: > As we close a handle GEM object, we update the drm_file's idr with an > error pointer to indicate the in-progress closure, and finally set it to The error pointer part stage seems to be missing. But the finding is valid. Reviewed-by: Mika Kuoppala > NU

Re: [Intel-gfx] [CI] drm/i915/selftests: Check preemption rollback of different ring queue depths

2020-06-18 Thread Mika Kuoppala
Chris Wilson writes: > Like live_unlite_ring, but instead of simply looking at the impact of > intel_ring_direction(), check that preemption more generally works with > different depths of queued requests in the ring. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > -

Re: [Intel-gfx] [PATCH] drm/i915/selftests: Check preemption rollback of different ring queue depths

2020-06-16 Thread Mika Kuoppala
Chris Wilson writes: > Like live_unlite_ring, but instead of simply looking at the impact of > intel_ring_direction(), check that preemption more generally works with > different depths of queued requests in the ring. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala P

Re: [Intel-gfx] [PATCH] drm/i915: Mark up inline getters as taking a const i915_request

2020-06-16 Thread Mika Kuoppala
n Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/i915_request.h | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_request.h > b/drivers/gpu/drm/i915/i915_request.h > index 118ab6650d1f..590762820761

Re: [Intel-gfx] [PATCH] drm/i915/selftests: Exercise far preemption rollbacks

2020-06-16 Thread Mika Kuoppala
a96 ("drm/i915/gt: Incrementally check for rewinding") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 150 + > 1 file changed, 150 insertions(+) > > diff --git a/drivers/gpu/drm/i915/gt/selftest_l

Re: [Intel-gfx] [PATCH 1/9] drm/i915/selftests: Exercise far preemption rollbacks

2020-06-16 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-06-16 09:55:04) >> >> Chris Wilson writes: >> >> > Not too long ago, we realised we had issues with a rolling back a >> > context so far for a preemption request we considered the resubmit not >>

Re: [Intel-gfx] [PATCH 4/9] drm/i915/execlists: Replace direct submit with direct call to tasklet

2020-06-16 Thread Mika Kuoppala
execlists_dequeue(engine); > - rcu_read_unlock(); > - } > -} > - > static void __execlists_hold(struct i915_request *rq) > { > LIST_HEAD(list); > @@ -3102,7 +3092,7 @@ static bool preempt_timeout(const struct > intel_engine_cs *const engine) >

Re: [Intel-gfx] [PATCH 3/9] drm/i915/selftests: Enable selftesting of busy-stats

2020-06-16 Thread Mika Kuoppala
in, rq)) { > + intel_gt_set_wedged(engine->gt); > + err = -ETIME; > + break; > + } > + > + preempt_disable(); > + dt = ktime_to_ns(ktime_get()); > + de = intel_engine_get_busy

Re: [Intel-gfx] [PATCH 2/9] drm/i915/selftests: Use friendly request names for live_timeslice_rewind

2020-06-16 Thread Mika Kuoppala
Chris Wilson writes: > Rather than mixing [012] and (A1, A2, B2) for the request indices, use > the enums throughout. > > Signed-off-by: Chris Wilson Yes, much more friendlier. Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 15 ---

Re: [Intel-gfx] [PATCH 1/9] drm/i915/selftests: Exercise far preemption rollbacks

2020-06-16 Thread Mika Kuoppala
ncrementally check for rewinding") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 150 + > 1 file changed, 150 insertions(+) > > diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c > b/dr

Re: [Intel-gfx] [PATCH] drm/i915/gt: Don't flush the tasklet if not setup

2020-06-15 Thread Mika Kuoppala
Chris Wilson writes: > If the tasklet is not being used, don't try and flush it. > > Fixes: 594893870044 ("drm/i915/gt: Add a safety submission flush in the > heartbeat") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala

Re: [Intel-gfx] [PATCH] drm/i915/gt: Add a safety submission flush in the heartbeat

2020-06-15 Thread Mika Kuoppala
+ if (tasklet_trylock(t)) { > + /* Must wait for any GPU reset in progress. */ > + if (__tasklet_is_enabled(t)) On heartbeat context this could be an assertion I think. But it is difficult to enforce hw sanity and still please the user. They will curs

Re: [Intel-gfx] [PATCH] drm/i915/selftests: Dump engine state and trace upon hanging after reset

2020-06-15 Thread Mika Kuoppala
Chris Wilson writes: > If the engine dies after a reset, and so we fail to submit a request > but need to be interrupted by the CI runner, dump the engine state. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftes

Re: [Intel-gfx] [PATCH 01/10] drm/i915/selftests: Disable preemptive heartbeats over preemption tests

2020-06-15 Thread Mika Kuoppala
Chris Wilson writes: > Since the heartbeat may cause a preemption event, disable it over the > preemption suppression tests. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 14 +++--- > 1 file change

Re: [Intel-gfx] [PATCH] drm/i915/gt: Flush gen3 relocs harder, again

2020-06-13 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-06-12 23:05:18) >> Chris Wilson writes: >> >> > gen3 does not fully flush MI stores to memory on MI_FLUSH, such that a >> > subsequent read from e.g. the sampler can bypass the store and read the >> >

Re: [Intel-gfx] [PATCH] drm/i915/gt: Flush gen3 relocs harder, again

2020-06-12 Thread Mika Kuoppala
ferences: a889580c087a ("drm/i915: Flush GPU relocs harder for gen3") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: Joonas Lahtinen > --- > drivers/gpu/drm/i915/gt/gen2_engine_cs.c | 61 ++-- > 1 file changed, 25 insertions(+), 36 deletion

Re: [Intel-gfx] [PATCH 1/3] drm/i915/execlists: Lift opportunistic process_csb to before engine lock

2020-06-12 Thread Mika Kuoppala
Chris Wilson writes: > Since the process_csb() does not require us to hold the > engine->active.lock, we can move the opportunistic flush before > direction submission to outside of the lock. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- >

Re: [Intel-gfx] [PATCH] drm/i915/gt: Flush gen3 relocs harder, again

2020-06-12 Thread Mika Kuoppala
ncoherency was seen over a few hours (with and without > background memory pressure), 32 was the magic number. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2018 > References: a889580c087a ("drm/i915: Flush GPU relocs harder for gen3") > Signed-off-by: C

Re: [Intel-gfx] [PATCH 6/6] drm/i915/gt: Move gen4 GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Chris Wilson writes: > Rescue the GT workarounds from being buried inside init_clock_gating so > that we remember to apply them after a GT reset, and that they are > included in our verification that the workarounds are applied. > > Signed-off-by: Chris Wilson Reviewed-by

Re: [Intel-gfx] [PATCH 5/6] drm/i915/gt: Move ilk GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Chris Wilson writes: > Rescue the GT workarounds from being buried inside init_clock_gating so > that we remember to apply them after a GT reset, and that they are > included in our verification that the workarounds are applied. > > Signed-off-by: Chris Wilson Reviewed-by

Re: [Intel-gfx] [PATCH 4/6] drm/i915/gt: Move snb GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
+ > + /* WaDisable_RenderCache_OperationalFlush:snb */ > + wa_masked_dis(wal, CACHE_MODE_0, RC_OP_FLUSH_ENABLE); > + > + /* > + * BSpec recoomends 8x4 when MSAA is used, recommends. Reviewed-by: Mika Kuoppala > + * however in practice 16x4 seems fastest

Re: [Intel-gfx] [PATCH 3/6] drm/i915/gt: Move vlv GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Chris Wilson writes: > Rescue the GT workarounds from being buried inside init_clock_gating so > that we remember to apply them after a GT reset, and that they are > included in our verification that the workarounds are applied. > > Signed-off-by: Chris Wilson Reviewed-by

Re: [Intel-gfx] [PATCH 2/6] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Mika Kuoppala writes: > Chris Wilson writes: > >> Rescue the GT workarounds from being buried inside init_clock_gating so >> that we remember to apply them after a GT reset, and that they are >> included in our verification that the workarounds are applied. >>

Re: [Intel-gfx] [PATCH 2/6] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Chris Wilson writes: > Rescue the GT workarounds from being buried inside init_clock_gating so > that we remember to apply them after a GT reset, and that they are > included in our verification that the workarounds are applied. > > Signed-off-by: Chris Wilson > --- > drivers/gpu/drm/i915/gt/in

Re: [Intel-gfx] [PATCH] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
, not or in our disable > bit. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2011 > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 48 + > drivers/gpu/drm/i915/intel_pm.c

Re: [Intel-gfx] [PATCH 1/6] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds

2020-06-11 Thread Mika Kuoppala
Chris Wilson writes: > Rescue the GT workarounds from being buried inside init_clock_gating so > that we remember to apply them after a GT reset, and that they are > included in our verification that the workarounds are applied. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2011 >

Re: [Intel-gfx] [PATCH] drm/i915/gt: Include context status in debug dumps

2020-06-10 Thread Mika Kuoppala
Chris Wilson writes: > This may be useful to identify contexts that are running even though > they are supposed to be closed or banned. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 12 &g

Re: [Intel-gfx] [PATCH 03/28] drm/i915/selftests: Teach hang-self to target only itself

2020-06-10 Thread Mika Kuoppala
und activity, as a > separate flag from exercising all others. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/d

Re: [Intel-gfx] [PATCH] drm/i915/gt: Incrementally check for rewinding

2020-06-10 Thread Mika Kuoppala
/* > * Reserve space for 2 NOOPs at the end of each request to be > * used as a workaround for not being allowed to do lite > @@ -4770,6 +4786,9 @@ static u32 *gen8_emit_wa_tail(struct i915_request > *request, u32 *cs) > *cs++ = MI_NOOP; > request->wa_tail = in

Re: [Intel-gfx] [PATCH 02/28] drm/i915/selftests: Make the hanging request non-preemptible

2020-06-08 Thread Mika Kuoppala
ight request. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 36 ++-- > 1 file changed, 26 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/selftest_hangche

Re: [Intel-gfx] [PATCH 01/28] drm/i915: Adjust the sentinel assert to match implementation

2020-06-08 Thread Mika Kuoppala
n off the HW. Check that they are the > - * only request in the pending submission. > + * Sentinels are supposed to be the last request so they flush > + * the current exection off the HW. Check that they are the only s/exection/exeqution Rev

Re: [Intel-gfx] [PATCH 04/10] drm/i915/gt: Couple tasklet scheduling for all CS interrupts

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-06-05 16:33:19) >> Chris Wilson writes: >> >> > If any engine asks for the tasklet to be kicked from the CS interrupt, >> > do so. >> >> The why part is a bit thin. The plan is to use execlist ta

Re: [Intel-gfx] [PATCH 02/10] drm/i915/gt: Always check to enable timeslicing if not submitting

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-06-05 16:20:34) >> Chris Wilson writes: >> >> > We may choose not to submit for a number of reasons, yet not fill both >> > ELSP. In which case we must start timeslicing (there will be no ACK >> > even

Re: [Intel-gfx] [PATCH 04/10] drm/i915/gt: Couple tasklet scheduling for all CS interrupts

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > If any engine asks for the tasklet to be kicked from the CS interrupt, > do so. The why part is a bit thin. The plan is to use execlist tasklet for move stuff from virtual rings to real ones? -Mika > > Signed-off-by: Chris Wilson > --- > drivers/gpu/drm/i915/gt/intel_g

Re: [Intel-gfx] [PATCH 03/10] Restore "drm/i915: drop engine_pin/unpin_breadcrumbs_irq"

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > This was removed in commit 478ffad6d690 ("drm/i915: drop > engine_pin/unpin_breadcrumbs_irq") as the last user had been removed, > but now there is a promise of a new user in the next patch. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Ku

Re: [Intel-gfx] [PATCH] drm/i915/gt: Include the engine's fw-domains in the debug info

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > Add engine->fw_domain/active to the pretty printer for debug dumps and > debugfs. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: Venkata Sandeep Dhanalakota Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_e

Re: [Intel-gfx] [PATCH 02/10] drm/i915/gt: Always check to enable timeslicing if not submitting

2020-06-05 Thread Mika Kuoppala
Chris Wilson writes: > We may choose not to submit for a number of reasons, yet not fill both > ELSP. In which case we must start timeslicing (there will be no ACK > event on which to hook the start) if the queue would benefit from the > currently active context being evicted. > > Signed-off-by:

Re: [Intel-gfx] [PATCH 01/10] drm/i915/gt: Set timeslicing priority from queue

2020-06-05 Thread Mika Kuoppala
ently active context if the queue is of > equal priority after its quantum expired). > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/

Re: [Intel-gfx] [igt-dev] [PATCH i-g-t] i915/gem_exec_schedule: Try to spot unfairness

2020-06-02 Thread Mika Kuoppala
Chris Wilson writes: > An important property for multi-client systems is that each client gets > a 'fair' allotment of system time. (Where fairness is at the whim of the > context properties, such as priorities.) This test forks N independent > clients (albeit they happen to share a single vm), a

Re: [Intel-gfx] [PATCH 03/36] drm/i915/gt: Move legacy context wa to intel_workarounds

2020-06-02 Thread Mika Kuoppala
Chris Wilson writes: > Use the central mechanism for recording and verifying that we restore > the w/a for the older devices as well. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > .../gpu/drm/i915/gt/intel_ring_submission.c | 28 -

Re: [Intel-gfx] [PATCH 02/36] drm/i915/gt: Split low level gen2-7 CS emitters

2020-06-02 Thread Mika Kuoppala
m outside of this context. *want. Acked-by: Mika Kuoppala > > Signed-off-by: Chris Wilson > --- > drivers/gpu/drm/i915/Makefile | 2 + > drivers/gpu/drm/i915/gt/gen2_engine_cs.c | 340 +++ > drivers/gpu/drm/i915/gt/gen2_engine_cs.h | 3

Re: [Intel-gfx] [igt-dev] [PATCH i-g-t] i915/gem_exec_balancer: Disable pre-parser for rewritten batches

2020-06-02 Thread Mika Kuoppala
Chris Wilson writes: > Quoting Mika Kuoppala (2020-06-01 15:56:55) >> Chris Wilson writes: >> >> > As we rewrite the batches on the fly to implement the non-preemptible >> > lock, we need to tell Tigerlake to read the batch afresh each time. >> >

Re: [Intel-gfx] [PATCH] drm/i915: Whitelist context-local timestamp in the gen9 cmdparser

2020-06-01 Thread Mika Kuoppala
Chris Wilson writes: > Allow batch buffers to read their own _local_ cumulative HW runtime of > their logical context. > > Fixes: 0f2f39758341 ("drm/i915: Add gen9 BCS cmdparsing") > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > Cc: # v5.4+ Reviewed-by: M

Re: [Intel-gfx] [igt-dev] [PATCH i-g-t] i915/gem_exec_balancer: Disable pre-parser for rewritten batches

2020-06-01 Thread Mika Kuoppala
Chris Wilson writes: > As we rewrite the batches on the fly to implement the non-preemptible > lock, we need to tell Tigerlake to read the batch afresh each time. > Amusingly, the disable is a part of an arb-check, so we have to be > careful not to include the arbitration point inside our unpreem

Re: [Intel-gfx] [PATCH] drm/i915: Trim the ironlake+ irq handler

2020-06-01 Thread Mika Kuoppala
63 72 +9 > ilk_irq_handler 22212080-141 > > A slight improvement in the baseline overnight as well! > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > --- > drivers/gpu/drm/i915/i915_irq.c | 59 +--

Re: [Intel-gfx] [PATCH 13/36] drm/i915: Relinquish forcewake immediately after manual grouping

2020-06-01 Thread Mika Kuoppala
pact. [So we don't do that anymore! > Hopefully, this will spare us from still needing the mitigation of the > timer for steady state execution.] > > Signed-off-by: Chris Wilson > Cc: Tvrtko Ursulin > Cc: Mika Kuoppala I am not a fan of having explicit put relying on ti

Re: [Intel-gfx] [PATCH 12/36] drm/i915/gt: Track if an engine requires forcewake w/a

2020-06-01 Thread Mika Kuoppala
Chris Wilson writes: > Sometimes an engine might need to keep forcewake active while it is busy > submitting requests for a particular workaround. Track such nuisance > with engine->fw_domain. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- >

Re: [Intel-gfx] [PATCH 04/36] drm/i915: Trim the ironlake+ irq handler

2020-06-01 Thread Mika Kuoppala
Chris Wilson writes: > Ever noticed that our interrupt handlers are where we spend most of our > time on a busy system? In part this is unavoidable as each interrupt > requires to poll and reset several registers, but we can try and so as > efficiently as possible. > > Function

Re: [Intel-gfx] [PATCH 01/36] drm/i915: Handle very early engine initialisation failure

2020-06-01 Thread Mika Kuoppala
l_engines_release+0x68/0xc0 [i915] > [ 16.136680] intel_engines_release+0x49/0xc0 [i915] > [ 16.136757] intel_gt_init+0x2f4/0x5e0 [i915] > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 6 +++--- > 1 file c

Re: [Intel-gfx] [PATCH] drm/i915: Discard a misplaced GGTT vma

2020-05-29 Thread Mika Kuoppala
Chris Wilson writes: > Across the many users of the GGTT vma (internal objects, mmapings, > display etc), we may end up with conflicting requirements for the > placement. Currently, we try to resolve the conflict by unbinding the > vma and rebinding it to match the new constraints; over time we w

Re: [Intel-gfx] [PATCH] drm/i915/gt: Start timeslice on partial submission

2020-05-28 Thread Mika Kuoppala
it. If this is last in a line, it makes sense to make sure that we get woken up. Reviewed-by: Mika Kuoppala > > Signed-off-by: Chris Wilson > Cc: Tvrtko Ursulin > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > >

Re: [Intel-gfx] [PATCH 2/3] drm/i915/gt: Don't declare hangs if engine is stalled

2020-05-28 Thread Mika Kuoppala
* ringbuffer. If one context is blocked on an > + * external fence, not only is it not submitted, > + * but all other contexts, including the kernel > + * context are stuck waiting for the signal. > +

Re: [Intel-gfx] [PATCH 05/12] drm/i915: Improve execute_cb struct packing

2020-05-26 Thread Mika Kuoppala
->execute_cb)); > spin_unlock_irq(&rq->lock); > > remove_from_client(rq); > @@ -395,7 +394,8 @@ __await_execution(struct i915_request *rq, > i915_sw_fence_complete(cb->fence); > kmem_cache_free(global.slab

Re: [Intel-gfx] [PATCH 04/12] drm/i915/execlists: Shortcircuit queue_prio() for no internal levels

2020-05-26 Thread Mika Kuoppala
154 -15 > __execlists_submission_tasklet 46964659 -37 > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c

Re: [Intel-gfx] [PATCH] drm/i915/gt: Force the GT reset on shutdown

2020-05-26 Thread Mika Kuoppala
eed with the reset as we > shutdown the module. We know the next user must reinitialise the HW for > their purpose. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/489 > Signed-off-by: Chris Wilson > Cc: sta...@kernel.org Reviewed-by: Mika Kuoppala > --- > dr

Re: [Intel-gfx] [PATCH 01/12] drm/i915/gt: Stop cross-polluting PIN_GLOBAL with PIN_USER with no-ppgtt

2020-05-25 Thread Mika Kuoppala
l/-/issues/1880 > Signed-off-by: Chris Wilson Acked-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_ggtt.c | 11 +++ > 1 file changed, 3 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c > b/drivers/gpu/drm/i915/gt/intel_ggtt.

Re: [Intel-gfx] [PATCH 03/12] drm/i915/gem: Suppress some random warnings

2020-05-25 Thread Mika Kuoppala
Chris Wilson writes: > Leave the error propagation in place, but limit the warnings to only > show up in CI if the unlikely errors are hit. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 3 +-- > dri

Re: [Intel-gfx] [PATCH 02/12] drm/i915/gt: Cancel the flush worker more thoroughly

2020-05-25 Thread Mika Kuoppala
that the finit goes as you expect, you could add two cancel_delayed_work_sync and assert that the final one return false. Reviewed-by: Mika Kuoppala > } > > void intel_gt_fini_buffer_pool(struct intel_gt *gt) > -- > 2.20.1 > >

Re: [Intel-gfx] [PATCH 04/12] drm/i915/selftests: Check for an initial-breadcrumb in wait_for_submit()

2020-05-19 Thread Mika Kuoppala
clare that a request has > been already submitted too early. submittedstarted...handled_by_gpu. I guess wait_for_submit is generic enough to cater all cases but we actually do not wait for submit but we wait for gpu to reach it. > > Signed-off-by: Chris Wilson Revie

Re: [Intel-gfx] [PATCH 02/12] drm/i915/selftests: Change priority overflow detection

2020-05-19 Thread Mika Kuoppala
Chris Wilson writes: > Check for integer overflow in the priority chain, rather than against a > type-constricted max-priority check. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 6 +++--- > 1 file change

Re: [Intel-gfx] [PATCH 03/12] drm/i915/selftests: Restore to default heartbeat

2020-05-19 Thread Mika Kuoppala
Chris Wilson writes: > Since we temporarily disable the heartbeat and restore back to the > default value, we can use the stored defaults on the engine and avoid > using a local. > > Signed-off-by: Chris Wilson > --- Reviewed-by: Mika Kuoppala > drivers/gpu/drm/i915/gt

Re: [Intel-gfx] [PATCH 01/12] drm/i915: Don't set queue-priority hint when supressing the reschedule

2020-05-19 Thread Mika Kuoppala
nning with only the inflight request. s/nnn/nn Reviewed-by: Mika Kuoppala > > Fixes: 6cebcf746f3f ("drm/i915: Tweak scheduler's kick_submission()") > Signed-off-by: Chris Wilson > --- > drivers/gpu/drm/i915/i915_scheduler.c | 16 > 1 file changed

Re: [Intel-gfx] [PATCH] drm/i915/selftests: Measure dispatch latency

2020-05-19 Thread Mika Kuoppala
Chris Wilson writes: > A useful metric of the system's health is how fast we can tell the GPU > to do various actions, so measure our latency. > > v2: Refactor all the instruction building into emitters. > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala > C

Re: [Intel-gfx] [PATCH i-g-t] i915: Add gem_exec_endless

2020-05-19 Thread Mika Kuoppala
_BIND, but for the moment this > suffices to construct the GTT as required for arbitrary > *user-controlled* indirect execution. > > Signed-off-by: Chris Wilson > Cc: Joonas Lahtinen > Cc: Mika Kuoppala > --- > lib/igt_core.h| 1 + > tests/Makefile.sou

Re: [Intel-gfx] [PATCH v2] drm/i915/selftests: Measure dispatch latency

2020-05-18 Thread Mika Kuoppala
Chris Wilson writes: > A useful metric of the system's health is how fast we can tell the GPU > to do various actions, so measure our latency. > > v2: Refactor all the instruction building into emitters. > > Signed-off-by: Chris Wilson > Cc: Mika Kuopp

Re: [Intel-gfx] [PATCH 16/24] drm/i915/selftests: Always call the provided engine->emit_init_breadcrumb

2020-05-14 Thread Mika Kuoppala
Chris Wilson writes: > While this does not appear to fix any issues, the backend itself knows > when it wants to emit a breadcrumb, so let it make the final call. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/selftests

Re: [Intel-gfx] [PATCH 2/7] drm/i915: Mark the addition of the initial-breadcrumb in the request

2020-05-13 Thread Mika Kuoppala
eing written too early. We also > want to ensure that we do not add semaphore waits after we have already > closed the semaphore section, an issue for later deferred waits. > > Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c

Re: [Intel-gfx] [PATCH v2] drm/i915/gem: Remove redundant exec_fence

2020-05-13 Thread Mika Kuoppala
Chris Wilson writes: > Since there can only be one of in_fence/exec_fence, just use the single > in_fence local. > > v2: Considate lookup > > Signed-off-by: Chris Wilson > Cc: Mika Kuoppala Reviewed-by: Mika Kuoppala > --- > .../gpu/drm/i915/gem/i9

Re: [Intel-gfx] [PATCH 1/7] drm/i915/gem: Remove redundant exec_fence

2020-05-13 Thread Mika Kuoppala
Chris Wilson writes: > Since there can only be one of in_fence/exec_fence, just use the single > in_fence local. > > Signed-off-by: Chris Wilson > --- > .../gpu/drm/i915/gem/i915_gem_execbuffer.c| 24 --- > 1 file changed, 10 insertions(+), 14 deletions(-) > > diff --git a/d

Re: [Intel-gfx] [PATCH 10/24] drm/i915: Drop no-semaphore boosting

2020-05-13 Thread Mika Kuoppala
cking on the semaphore caused extremely bad scheduling with multiple > clients utilising multiple rings. Now, there is no impact and we can > remove the complication. Not a small feat to accomplish. Reviewed-by: Mika Kuoppala > > Signed-off-by: Chris Wilson > --- > .../gpu/drm/

Re: [Intel-gfx] [PATCH] drm/i915/gt: Suspend tasklets before resume sanitization

2020-05-13 Thread Mika Kuoppala
0 [i915] > <4>[ 449.386797] gt_sanitize+0xd6/0x260 [i915] > > As part of the reset preparation, engine->reset.prepare() prevents the > tasklet from running, so pull the sanitization inside the critical > section for reset. > > Closes: https://gitlab.freedesktop.org/d

Re: [Intel-gfx] [PATCH] drm/i915/gt: Reset execlists registers before HWSP

2020-05-13 Thread Mika Kuoppala
so rejig the register reset. > > Signed-off-by: Chris Wilson Acked-by: Mika Kuoppala > --- > drivers/gpu/drm/i915/gt/intel_lrc.c | 19 +-- > 1 file changed, 13 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c > b/drivers

Re: [Intel-gfx] [PATCH] drm/i915/gen12: Add aux table invalidate for all engines

2020-05-12 Thread Mika Kuoppala
Daniele Ceraolo Spurio writes: > On 5/7/20 7:20 AM, Mika Kuoppala wrote: >> All engines, exception being blitter as it does not >> care about the form, can access compressed surfaces. >> >> So we need to add forced aux table invalidates >> for those engines. &g

Re: [Intel-gfx] [PATCH] drm/i915: Watch out for idling during i915_gem_evict_something

2020-05-12 Thread Mika Kuoppala
t; Signed-off-by: Chris Wilson > Cc: Tvrtko Ursulin > Cc: # v5.5+ Only thing I would change is tune up the subject line. It fixes a possible busy loop in eviction so I feel 'watch out' is not strong enough for my liking. Reviewed-by: Mika Kuoppala >

Re: [Intel-gfx] [PATCH 3/3] drm/i915/gt: Restore Cherryview back to full-ppgtt

2020-05-11 Thread Mika Kuoppala
e asynchronous binds, and the > remaining issues do not seem restricted to Cherryview [at least the ones > seen over a few dozen CI runs, less frequent issues are sure to be > discovered!] > > Signed-off-by: Chris Wilson Acked-by: Mika Kuoppala > ---

<    1   2   3   4   5   6   7   8   9   10   >