<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 08-05-2025 01:19, Rodrigo Vivi
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:aBu5O5odAKaxhhym@intel.com">
      <pre class="moz-quote-pre" wrap=""><blockquote type="cite" style="color: #007cff;"><blockquote type="cite" style="color: #007cff;"><pre wrap="" class="moz-quote-pre">+static int xe_pcode_fwctl_uctx_open(struct fwctl_uctx *uctx)
+{
+       struct xe_pcode_fwctl_dev *fwctl_dev =
+               container_of(uctx->fwctl, struct xe_pcode_fwctl_dev, fwctl);
+       struct xe_device *xe = fwctl_dev->xe;
+
+       xe_pm_runtime_get(xe);
</pre></blockquote><pre wrap="" class="moz-quote-pre">Shouldn't this be in the RPC function? Why keep the device awake as
long as a the FD is open?
</pre></blockquote><pre wrap="" class="moz-quote-pre">In general I prefer the runtime on the outer bounds to avoid funny deadlock
cases. But right, in this case here it could be inside the xe_pcode calls
itself, that is when the mmio/mailboxes accesses will really happen.</pre></pre>
    </blockquote>
    <p>This I will handle in separate patch. For now will do runtime on
      rpc function.</p>
    <p>Regards,<br>
      Badal</p>
    <blockquote type="cite" cite="mid:aBu5O5odAKaxhhym@intel.com">
      <pre class="moz-quote-pre" wrap=""><pre wrap="" class="moz-quote-pre">
</pre></pre>
    </blockquote>
  </body>
</html>