<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <pre>
</pre>
    <div class="moz-cite-prefix">
      <pre>On 2/26/2022 1:55 AM, Alan Previn wrote:</pre>
    </div>
    <blockquote type="cite" cite="mid:20220226095541.1010534-2-alan.previn.teres.alexis@intel.com">
      <pre class="moz-quote-pre" wrap="">-static void guc_capture_list_init(struct intel_guc *guc)
+static int
+guc_capture_prep_lists(struct intel_guc *guc)
 {
</pre>
    </blockquote>
    <pre>...</pre>
    <blockquote type="cite" cite="mid:20220226095541.1010534-2-alan.previn.teres.alexis@intel.com">
      <pre class="moz-quote-pre" wrap="">-    /* FIXME: Populate a proper capture list */
+       /* first, set aside the first page for a capture_list with zero descriptors */
+       total_size = PAGE_SIZE;
+       if (!iosys_map_is_null(&guc->ads_map)) {
+               file = shmem_create_from_data("guc-err-cap", null_header, sizeof(null_header));
</pre>
    </blockquote>
    <pre>Alan: CI caught a bug - above line was triggering memory allocation
i completely forgot ... will fix to match the other ADS err-capture lists
in this function - i.e. intel_guc_capture will allocate on first boot
and cache it.
</pre>
    <blockquote type="cite" cite="mid:20220226095541.1010534-2-alan.previn.teres.alexis@intel.com">
      <pre class="moz-quote-pre" wrap="">+            if (!IS_ERR(file)) {
+                       shmem_read_to_iosys_map(file, 0, &guc->ads_map,
+                                               ggtt, sizeof(null_header));
+                       fput(file);
+               } else {
+                       drm_dbg(&i915->drm, "GuC-capture: failed shmem for nulllist = 0x%016lx",
+                               PTR_ERR(file));
+               }
+               null_ggtt = ggtt;
+               ggtt += PAGE_SIZE;
+       }
</pre>
    </blockquote>
  </body>
</html>