From: "Teres Alexis, Alan Previn" <alan.previn.teres.alexis@intel.com>
To: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Cc: "dri-devel@lists.freedesktop.org" <dri-devel@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [PATCH v5 5/8] drm/i915/pxp: Add ARB session creation and cleanup
Date: Thu, 23 Feb 2023 23:27:22 +0000 [thread overview]
Message-ID: <465d52f7588a20589a63b8ded64eb42f9af1dbb8.camel@intel.com> (raw)
In-Reply-To: <a37b0016cc45876ea9df28f91c34a92daacb08e1.camel@intel.com>
On Fri, 2023-02-17 at 03:12 +0000, Teres Alexis, Alan Previn wrote:
> On Tue, 2023-02-14 at 13:38 -0800, Teres Alexis, Alan Previn wrote:
> > Add MTL's function for ARB session creation using PXP firmware
> > version 4.3 ABI structure format.
>
> alan:snip
>
> Not part of this patch today but a new modification is required that would end up going into this patch --->
>
> So from the internal testing we are doing on MTL, i have noticed that the first time the GSC firmware
> is requested to init the arb session (right after a cold-boot or driver-reload-after-flr), it takes much longer.
> This has resulted in the observation of the following problematic event flow:
>
> 1. app or igt calls gem-context-create to create a protected context (after a fresh boot or driver reload).
> 2. intel_pxp_start will begin the global teardown and recreation where:
> 2-a: the first part (i.e. session teardown) is skipped (since arb session wasnt created before this)
> 2-b: the second part (i.e. arb session init commands via the gsc firmware) does happen and takes a long time (on first time)
> 3. step 2 is queued thru a worker while the main call into intel_pxp_start continues to wait for the arb
> session to start and finally bails out with a timeout (back up through gem-context-create).
> 4. app retries again and now we get a second call that repeats step 1 while 2-b is still wrapping up.
> so depending on the race of this step 4 (step-1-recall) vs the completion of step 2-b, we could end up
> getting a 2nd teardown right (i.e. step 2-a going in) after the the first arb-session-creation completed
> ... eventhough in both cases app just wants the creation.
>
> The simplest fix (with minimal code changes) would be to add a complementary "is_arb_creation_pending" flag
> alongside the is_arb_valid flag - with both remainining protected by the arb-mutex. That said, we I'll respin rev6
> with this fix along with other mutex fix on Patch4.
After additional offline discussions with Daniele, we've decided against adding more complexity.
Instead we'll get the official timeout spec from the gsc-firmware and bump up the arb-session timeout
creation across the call-stack to ensure its sufficient and if it fails, we return -ENODEV indicating
we do not have PXP support. Although this will block the gem protected-context creation, it will not
block other apps, only the ones creating protected contexts which would end up waiting somewhere for
the gsc fw (from an e2e system level) no matter what design we employ so bumping out timeout with a
hard -ENODEV seems like the most straight forward.
next prev parent reply other threads:[~2023-02-23 23:27 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-14 21:38 [Intel-gfx] [PATCH v5 0/8] drm/i915/pxp: Add MTL PXP Support Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 1/8] drm/i915/pxp: Add GSC-CS back-end resource init and cleanup Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 2/8] drm/i915/pxp: Add MTL hw-plumbing enabling for KCR operation Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 3/8] drm/i915/pxp: Add MTL helpers to submit Heci-Cmd-Packet to GSC Alan Previn
2023-02-22 23:41 ` Teres Alexis, Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 4/8] drm/i915/pxp: Add GSC-CS backend to send GSC fw messages Alan Previn
2023-02-15 19:58 ` Teres Alexis, Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 5/8] drm/i915/pxp: Add ARB session creation and cleanup Alan Previn
2023-02-17 3:12 ` Teres Alexis, Alan Previn
2023-02-23 23:27 ` Teres Alexis, Alan Previn [this message]
2023-02-23 22:39 ` Teres Alexis, Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 6/8] drm/i915/pxp: MTL-KCR interrupt ctrl's are in GT-0 Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 7/8] drm/i915/pxp: On MTL, KCR enabling doesn't wait on tee component Alan Previn
2023-02-14 21:38 ` [Intel-gfx] [PATCH v5 8/8] drm/i915/pxp: Enable PXP with MTL-GSC-CS Alan Previn
2023-02-18 17:31 ` Teres Alexis, Alan Previn
2023-02-14 23:01 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/pxp: Add MTL PXP Support (rev5) Patchwork
2023-02-14 23:27 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-02-15 10:20 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=465d52f7588a20589a63b8ded64eb42f9af1dbb8.camel@intel.com \
--to=alan.previn.teres.alexis@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox