]> www.infradead.org Git - users/willy/pagecache.git/commit
drm/xe/guc_pc: Retry and wait longer for GuC PC start
authorRodrigo Vivi <rodrigo.vivi@intel.com>
Fri, 7 Mar 2025 16:03:07 +0000 (11:03 -0500)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 10 Mar 2025 15:53:37 +0000 (11:53 -0400)
commitc605acb53f449f6289f042790307d7dc9e62d03d
tree892f6db547d5e9641ad0e97b587effcc4828caea
parent3e331a6715ee26f2fabc59dad6bb36d810707028
drm/xe/guc_pc: Retry and wait longer for GuC PC start

In a rare situation of thermal limit during resume, GuC can
be slow and run into delays like this:

xe 0000:00:02.0: [drm] GT1: excessive init time: 667ms! \
     [status = 0x8002F034, timeouts = 0]
xe 0000:00:02.0: [drm] GT1: excessive init time: \
     [freq = 100MHz (req = 800MHz), before = 100MHz, \
     perf_limit_reasons = 0x1C001000]
xe 0000:00:02.0: [drm] *ERROR* GT1: GuC PC Start failed
------------[ cut here ]------------
xe 0000:00:02.0: [drm] GT1: Failed to start GuC PC: -EIO

When this happens, it will block entirely the GPU to be used.
So, let's try and with a huge timeout in the hope it comes back.

Also, let's collect some information on how long it is usually
taking on situations like this, so perhaps the time can be tuned
later.

Cc: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Cc: Jonathan Cavitt <jonathan.cavitt@intel.com>
Cc: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250307160307.1093391-1-rodrigo.vivi@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
(cherry picked from commit b4b05e53b550a886b4754b87fd0dd2b304579e85)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_guc_pc.c