From: Nirmoy Das <nirmoy.das@intel.com>
To: John Harrison <john.c.harrison@intel.com>,
<intel-xe@lists.freedesktop.org>
Cc: Badal Nilawar <badal.nilawar@intel.com>,
Matthew Brost <matthew.brost@intel.com>,
Matthew Auld <matthew.auld@intel.com>,
"Himal Prasad Ghimiray" <himal.prasad.ghimiray@intel.com>,
Lucas De Marchi <lucas.demarchi@intel.com>,
<stable@vger.kernel.org>
Subject: Re: [PATCH v5 3/3] drm/xe/guc/tlb: Flush g2h worker in case of tlb timeout
Date: Mon, 4 Nov 2024 12:20:19 +0100 [thread overview]
Message-ID: <7f0dcef8-09c8-4ae7-8593-eb2afd9465b5@intel.com> (raw)
In-Reply-To: <32481d09-617b-4396-9577-010ddb657654@intel.com>
On 11/1/2024 7:51 PM, John Harrison wrote:
> On 10/29/2024 05:01, Nirmoy Das wrote:
>> Flush the g2h worker explicitly if TLB timeout happens which is
>> observed on LNL and that points to the recent scheduling issue with
>> E-cores on LNL.
>>
>> This is similar to the recent fix:
>> commit e51527233804 ("drm/xe/guc/ct: Flush g2h worker in case of g2h
>> response timeout") and should be removed once there is E core
>> scheduling fix.
>>
>> v2: Add platform check(Himal)
>> v3: Remove gfx platform check as the issue related to cpu
>> platform(John)
>> Use the common WA macro(John) and print when the flush
>> resolves timeout(Matt B)
>> v4: Remove the resolves log and do the flush before taking
>> pending_lock(Matt A)
>>
>> Cc: Badal Nilawar <badal.nilawar@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matthew Auld <matthew.auld@intel.com>
>> Cc: John Harrison <John.C.Harrison@Intel.com>
>> Cc: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> Cc: Lucas De Marchi <lucas.demarchi@intel.com>
>> Cc: <stable@vger.kernel.org> # v6.11+
>> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/2687
>> Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
>> ---
>> drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c b/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
>> index 773de1f08db9..3cb228c773cd 100644
>> --- a/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
>> +++ b/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
>> @@ -72,6 +72,8 @@ static void xe_gt_tlb_fence_timeout(struct work_struct *work)
>> struct xe_device *xe = gt_to_xe(gt);
>> struct xe_gt_tlb_invalidation_fence *fence, *next;
>> + LNL_FLUSH_WORK(>->uc.guc.ct.g2h_worker);
>> +
> Do we not want some kind of 'success required flush' message here as per the other instances?
This flush resolves TLB timeout but in this function, I can't think of a simple way to detect that and log a message.
Regards,
Nirmoy
> John.
>
>> spin_lock_irq(>->tlb_invalidation.pending_lock);
>> list_for_each_entry_safe(fence, next,
>> >->tlb_invalidation.pending_fences, link) {
>
next prev parent reply other threads:[~2024-11-04 11:20 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-29 12:01 [PATCH v5 1/3] drm/xe: Move LNL scheduling WA to xe_device.h Nirmoy Das
2024-10-29 12:01 ` [PATCH v5 2/3] drm/xe/ufence: Flush xe ordered_wq in case of ufence timeout Nirmoy Das
2024-11-01 13:21 ` Matthew Auld
2024-11-01 18:49 ` John Harrison
2024-10-29 12:01 ` [PATCH v5 3/3] drm/xe/guc/tlb: Flush g2h worker in case of tlb timeout Nirmoy Das
2024-11-01 13:19 ` Matthew Auld
2024-11-01 18:51 ` John Harrison
2024-11-04 11:20 ` Nirmoy Das [this message]
2024-10-29 14:57 ` ✓ CI.Patch_applied: success for series starting with [v5,1/3] drm/xe: Move LNL scheduling WA to xe_device.h Patchwork
2024-10-29 14:58 ` ✗ CI.checkpatch: warning " Patchwork
2024-10-29 14:59 ` ✓ CI.KUnit: success " Patchwork
2024-10-29 15:10 ` ✓ CI.Build: " Patchwork
2024-10-29 15:13 ` ✓ CI.Hooks: " Patchwork
2024-10-29 15:14 ` ✓ CI.checksparse: " Patchwork
2024-10-29 15:41 ` ✓ CI.BAT: " Patchwork
2024-10-29 17:47 ` ✗ CI.FULL: failure " Patchwork
2024-11-01 13:09 ` [PATCH v5 1/3] " Nirmoy Das
2024-11-01 13:21 ` Matthew Auld
2024-11-01 13:44 ` Nirmoy Das
2024-11-01 15:47 ` Lucas De Marchi
2024-11-01 18:48 ` John Harrison
2024-11-04 9:52 ` Nirmoy Das
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=7f0dcef8-09c8-4ae7-8593-eb2afd9465b5@intel.com \
--to=nirmoy.das@intel.com \
--cc=badal.nilawar@intel.com \
--cc=himal.prasad.ghimiray@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=john.c.harrison@intel.com \
--cc=lucas.demarchi@intel.com \
--cc=matthew.auld@intel.com \
--cc=matthew.brost@intel.com \
--cc=stable@vger.kernel.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 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.