drm/xe: Fix drm-next merge
authorLucas De Marchi <lucas.demarchi@intel.com>
Mon, 4 Nov 2024 18:31:04 +0000 (10:31 -0800)
committerLucas De Marchi <lucas.demarchi@intel.com>
Tue, 5 Nov 2024 06:36:02 +0000 (22:36 -0800)
Fix merge in commit c787c2901e2c ("Merge drm/drm-next into
drm-xe-next"). That workaround needs to be done only once.

While at it, also remove undesired newline before checking for error.

Fixes: c787c2901e2c ("Merge drm/drm-next into drm-xe-next")
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241104183104.2265275-1-lucas.demarchi@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/xe_guc_ct.c

index a405b92..550eeed 100644 (file)
@@ -1017,7 +1017,6 @@ retry_same_fence:
        }
 
        ret = wait_event_timeout(ct->g2h_fence_wq, g2h_fence.done, HZ);
-
        if (!ret) {
                LNL_FLUSH_WORK(&ct->g2h_worker);
                if (g2h_fence.done) {
@@ -1027,24 +1026,6 @@ retry_same_fence:
                }
        }
 
-       /*
-        * Occasionally it is seen that the G2H worker starts running after a delay of more than
-        * a second even after being queued and activated by the Linux workqueue subsystem. This
-        * leads to G2H timeout error. The root cause of issue lies with scheduling latency of
-        * Lunarlake Hybrid CPU. Issue dissappears if we disable Lunarlake atom cores from BIOS
-        * and this is beyond xe kmd.
-        *
-        * TODO: Drop this change once workqueue scheduling delay issue is fixed on LNL Hybrid CPU.
-        */
-       if (!ret) {
-               flush_work(&ct->g2h_worker);
-               if (g2h_fence.done) {
-                       xe_gt_warn(gt, "G2H fence %u, action %04x, done\n",
-                                  g2h_fence.seqno, action[0]);
-                       ret = 1;
-               }
-       }
-
        /*
         * Ensure we serialize with completion side to prevent UAF with fence going out of scope on
         * the stack, since we have no clue if it will fire after the timeout before we can erase