On Fri, 30 May 2025 20:09:02 +1000
Jonathan Gray <[email protected]> wrote:
> On Fri, May 30, 2025 at 05:13:34PM +0900, YASUOKA Masahiko wrote:
>> > Here is the other part of your initial diff.
>> > 
>> > The non-printf parts are a revert of
>> > 'drm/i915/guc: Change wa and EU_PERF_CNTL registers to MCR type'
>> > linux 835e4d9bb3a13879031942ca6692d5a82ec00158
>> 
>> This doesn't fix the problem.
>> 
>> > It would also be helpful if you could try raise the value
>> > of GUC_LOAD_RETRY_LIMIT in intel_guc_fw.c without other patches,
>> > to find a value that works.
>> 
>> Also I tried GUC_LOAD_RETRY_LIMIT=20 with the diff, it doesn't fix as
>> well..
> 
> I unfortunately can't reproduce this problem on an Alder Lake machine.

Yes, I see.

> Currently, GuC submission is disabled.  Does this diff which enables
> it, still have GuC failing to init?

xenodm shows only black with the message followings.  there is only
the mouse cursor.

***
drm:pid40316:ct_write *ERROR* [drm] *ERROR* GT0: GUC: CT: Corrupted descriptor 
head=127 tail=127 status=0x7f
i915_capture_error_state: stub
drm:pid25790:intel_gt_reset *NOTICE* [drm] GT0: Resetting chip for stopped 
heartbeat on rcs0
drm:pid25790:__uc_init_hw *ERROR* [drm] *ERROR* GT0: GuC initialization failed 
0xfffffffffffffffae
drm:pid25790:intel_gt_init_hw *ERROR* [drm] *ERROR* GT0: Enabling uc failed (-5)
drm:pid25790:intel_gt_reset *ERROR* [drm] *ERROR* GT0: Failed to initialise HW 
following reset (-5)
drm:pid25790:add_taint_for_CI *NOTICE* [drm] CI tainted: 0x1 by 
0xffffffff81ad2358S
***

Also I forgot to report this.  With your 2nd diff (paritially
reverting one), I got the following message.

***
drm:pid30716:guc_capture_prep_lists *WARNING* [drm] GT0: GUC: ADS capture alloc 
size changed from 32768 to 36864
***

Thank you for your help.

> The new_guc_id() change is needed as an mtx is held
> (submission_state.lock), and the pool_get() in idr_alloc() will
> use PR_WAITOK otherwise.
> 
> Index: sys/dev/pci/drm/i915/i915_driver.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/i915/i915_driver.c,v
> diff -u -p -r1.22 i915_driver.c
> --- sys/dev/pci/drm/i915/i915_driver.c        19 May 2025 21:48:28 -0000      
> 1.22
> +++ sys/dev/pci/drm/i915/i915_driver.c        30 May 2025 09:09:06 -0000
> @@ -2278,10 +2278,12 @@ inteldrm_attach(struct device *parent, s
>       intel_display_device_probe(dev_priv);
>  
>       /* uc_expand_default_options() with no GuC submission */
> +#if 0
>       if (GRAPHICS_VER(dev_priv) >= 12 &&
>           (INTEL_INFO(dev_priv)->platform != INTEL_TIGERLAKE) &&
>           (INTEL_INFO(dev_priv)->platform != INTEL_ROCKETLAKE))
>               dev_priv->params.enable_guc = ENABLE_GUC_LOAD_HUC;
> +#endif
>  
>       mmio_bar = (GRAPHICS_VER(dev_priv) == 2) ? 0x14 : 0x10;
>  
> Index: sys/dev/pci/drm/i915/gt/uc/intel_guc_submission.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/i915/gt/uc/intel_guc_submission.c,v
> diff -u -p -r1.21 intel_guc_submission.c
> --- sys/dev/pci/drm/i915/gt/uc/intel_guc_submission.c 28 Feb 2025 00:33:45 
> -0000      1.21
> +++ sys/dev/pci/drm/i915/gt/uc/intel_guc_submission.c 30 May 2025 09:27:09 
> -0000
> @@ -2256,7 +2256,7 @@ static int new_guc_id(struct intel_guc *
>               ret = ida_alloc_range(&guc->submission_state.guc_ids,
>                                     NUMBER_MULTI_LRC_GUC_ID(guc),
>                                     guc->submission_state.num_guc_ids - 1,
> -                                   GFP_KERNEL | __GFP_RETRY_MAYFAIL | 
> __GFP_NOWARN);
> +                                   GFP_KERNEL | __GFP_RETRY_MAYFAIL | 
> __GFP_NOWARN | GFP_NOWAIT);
>       if (unlikely(ret < 0))
>               return ret;
>  
> 
> 

Reply via email to