summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
diff options
context:
space:
mode:
authorJohn Harrison <John.C.Harrison@Intel.com>2024-01-11 00:02:16 +0300
committerJohn Harrison <John.C.Harrison@Intel.com>2024-02-15 04:17:35 +0300
commiteb927f01dfb6309c8a184593c2c0618c4000c481 (patch)
tree55f6a0b991925c65ea706879f04797e8a133c57d /drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
parentb112364867499e1327801da200868a6c506465fa (diff)
downloadlinux-eb927f01dfb6309c8a184593c2c0618c4000c481.tar.xz
drm/i915/gt: Restart the heartbeat timer when forcing a pulse
The context persistence code does things like send super high priority heartbeat pulses to ensure any leaked context can still be pre-empted and thus isn't a total denial of service but only a minor denial of service. Unfortunately, it wasn't bothering to restart the heartbeat worker with a fresh timeout. Thus, if a persistent context happened to be closed just before the heartbeat was going to go ping anyway then the forced pulse would get a negligble execution time. And as the forced pulse is super high priority, the worker thread's next step is a reset. Which means a potentially innocent system randomly goes boom when attempting to close a context. So, force a re-schedule of the worker thread with the appropriate timeout. Signed-off-by: John Harrison <John.C.Harrison@Intel.com> Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240110210216.4125092-1-John.C.Harrison@Intel.com
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c')
0 files changed, 0 insertions, 0 deletions