[PATCH v1] drm/i915/guc: Always disable interrupt ahead of synchronize_irq
Dong, Zhanjun
zhanjun.dong at intel.com
Mon Feb 3 23:50:16 UTC 2025
On 2025-02-03 8:29 a.m., Andi Shyti wrote:
> Hi,
>
> Please, next time, do not remove the mailing and the other folks
> you cc'ed.
>
> I'm adding back the mailing list and Daniele who has commented
> before.
Thanks, I also found my previous response click on "reply", not the
"reply all".
>
> ...
>
>>>> Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13454
>>>> Fixes: 26705e20752a ("drm/i915: Support for GuC interrupts")
>>>> Fixes: 54c52a841250 ("drm/i915/guc: Correctly handle GuC interrupts on Gen11")
>>>> Fixes: 2ae096872a2c ("drm/i915/pxp: Implement PXP irq handler")
>>>> Fixes: 3e7abf814193 ("drm/i915: Extract GT render power state management")
>>>
>>> There is an issue here, each fixes is introduced in different
>>> kernel versions and they can't be mixed all together as it would
>>> be impossible to backport them to the stable brances.
>>>
>>> E.g.:
>>> Fixes: 3e7abf814193 ("drm/i915: Extract GT render power state management")
>>> Cc: <stable at vger.kernel.org> # v5.5+
>>>
>>> Fixes: 2ae096872a2c ("drm/i915/pxp: Implement PXP irq handler")
>>> Cc: <stable at vger.kernel.org> # v5.16+
>>>
>>> Fixes: 54c52a841250 ("drm/i915/guc: Correctly handle GuC interrupts on Gen11")
>>> Cc: <stable at vger.kernel.org> # v5.3+
>>>
>>> Fixes: 26705e20752a ("drm/i915: Support for GuC interrupts")
>>> Cc: <stable at vger.kernel.org> # v4.10+
>>>
>>> Could you please split this patch in the four different patches
>>> that address the four different fixes?
>> Sure, will split it in next rev.
>
> First of all we need to understand if those Fixes are really
> needed or not. Daniele in his review has pointed out that...
I agree with Daniele, these fixes is not needed.
>
>>>>
>>>
>>> No blank lines in the tag section, please.
>>>
>>>> Signed-off-by: Zhanjun Dong <zhanjun.dong at intel.com>
>>>>
>>>> ---
>>>> Cc: Alan Previn <alan.previn.teres.alexis at intel.com>
>>>> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
>>>> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
>>>> Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
>>>> Cc: Andi Shyti <andi.shyti at intel.com>
>>>> ---
>>>> drivers/gpu/drm/i915/gt/intel_rps.c | 3 +--
>>>> drivers/gpu/drm/i915/gt/uc/intel_guc.c | 4 ++--
>>>> drivers/gpu/drm/i915/pxp/intel_pxp_irq.c | 2 +-
>>>> 3 files changed, 4 insertions(+), 5 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> index fa304ea088e4..0fe7a8d7f460 100644
>>>> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> @@ -244,8 +244,8 @@ static void rps_disable_interrupts(struct intel_rps *rps)
>>>> gen6_gt_pm_disable_irq(gt, GEN6_PM_RPS_EVENTS);
>>>> spin_unlock_irq(gt->irq_lock);
>>>> + rps_reset_interrupts(rps);
>
> ... the interrupts here are already disabled (read a couple of
> lines above).
>
> What is the reproduction rate of the issue? And how have you
> tested it?
I run the issue igt test
(https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13454) on ARL
for more than 3000 loops, but no reproduce at all. This issue seems
happens few month a time, and auto closed by Jira as no reproduce after
few weeks.
Due to the issue is hard to reproduce, what I do now is by code analysis.
Regards,
Zhanjun Dong
>
> Thanks,
> Andi
>
>>>> intel_synchronize_irq(gt->i915);
>>>> -
>>>
>>> Sebastian has already commented in his review, but please don't
>>> remove this blank line.
>>>
>>> Andi
>>>
>>>> /*
>>>> * Now that we will not be generating any more work, flush any
>>>> * outstanding tasks. As we are called on the RPS idle path,
More information about the Intel-gfx
mailing list