All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Write GPU relocs harder with gen3
@ 2018-11-19 15:41 Chris Wilson
  2018-11-19 16:19 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2018-11-19 15:41 UTC (permalink / raw)
  To: intel-gfx

Under moderate amounts of GPU stress, we can observe on Bearlake and
Pineview (later gen3 models) that we execute the following batch buffer
before the write into the batch is coherent. Adding extra (tested with
upto 32x) MI_FLUSH to either the invalidation, flush or both phases does
not solve the incoherency issue with the relocations, but emitting the
MI_STORE_DWORD_IMM twice does. So be it.

Fixes: 7dd4f6729f92 ("drm/i915: Async GPU relocation processing")
Testcase: igt/gem_tiled_fence_blits # blb/pnv
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_gem_execbuffer.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index 1aaccbe7e1de..d4fac09095f8 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -1268,7 +1268,7 @@ relocate_entry(struct i915_vma *vma,
 		else if (gen >= 4)
 			len = 4;
 		else
-			len = 3;
+			len = 6;
 
 		batch = reloc_gpu(eb, vma, len);
 		if (IS_ERR(batch))
@@ -1309,6 +1309,11 @@ relocate_entry(struct i915_vma *vma,
 			*batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
 			*batch++ = addr;
 			*batch++ = target_offset;
+
+			/* And again for good measure (blb/pnv) */
+			*batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
+			*batch++ = addr;
+			*batch++ = target_offset;
 		}
 
 		goto out;
-- 
2.19.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: Write GPU relocs harder with gen3
  2018-11-19 15:41 [PATCH] drm/i915: Write GPU relocs harder with gen3 Chris Wilson
@ 2018-11-19 16:19 ` Patchwork
  2018-11-19 21:30 ` ✓ Fi.CI.IGT: " Patchwork
  2018-11-20  9:48 ` [PATCH] " Joonas Lahtinen
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-11-19 16:19 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Write GPU relocs harder with gen3
URL   : https://patchwork.freedesktop.org/series/52698/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_5161 -> Patchwork_10848 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/52698/revisions/1/mbox/

== Known issues ==

  Here are the changes found in Patchwork_10848 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_mmap_gtt@basic-read:
      fi-glk-dsi:         PASS -> INCOMPLETE (k.org#198133, fdo#103359)

    igt@kms_flip@basic-flip-vs-wf_vblank:
      fi-bsw-n3050:       PASS -> FAIL (fdo#100368)

    igt@kms_frontbuffer_tracking@basic:
      fi-byt-clapper:     PASS -> FAIL (fdo#103167)

    igt@kms_pipe_crc_basic@read-crc-pipe-b:
      fi-byt-clapper:     PASS -> FAIL (fdo#107362)

    
    ==== Possible fixes ====

    igt@gem_ctx_create@basic-files:
      fi-bsw-kefka:       FAIL (fdo#108656) -> PASS

    igt@gem_exec_suspend@basic-s3:
      fi-icl-u2:          DMESG-WARN (fdo#107724) -> PASS

    igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
      fi-byt-clapper:     FAIL (fdo#103191, fdo#107362) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
  fdo#107724 https://bugs.freedesktop.org/show_bug.cgi?id=107724
  fdo#108656 https://bugs.freedesktop.org/show_bug.cgi?id=108656
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (52 -> 46) ==

  Additional (1): fi-kbl-7560u 
  Missing    (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-icl-u3 fi-icl-u 


== Build changes ==

    * Linux: CI_DRM_5161 -> Patchwork_10848

  CI_DRM_5161: 641f11d83579a00ff2ee757b1b587a7b1e8637f9 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4720: c27aaca295d3ca2a38521e571c012449371e4bb5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10848: 893a79381bc011db2141e66956b8c7cd91fafda1 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

893a79381bc0 drm/i915: Write GPU relocs harder with gen3

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10848/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* ✓ Fi.CI.IGT: success for drm/i915: Write GPU relocs harder with gen3
  2018-11-19 15:41 [PATCH] drm/i915: Write GPU relocs harder with gen3 Chris Wilson
  2018-11-19 16:19 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-11-19 21:30 ` Patchwork
  2018-11-20  9:48 ` [PATCH] " Joonas Lahtinen
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-11-19 21:30 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Write GPU relocs harder with gen3
URL   : https://patchwork.freedesktop.org/series/52698/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_5161_full -> Patchwork_10848_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_10848_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_10848_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_10848_full:

  === IGT changes ===

    ==== Warnings ====

    igt@pm_rc6_residency@rc6-accuracy:
      shard-snb:          SKIP -> PASS

    
== Known issues ==

  Here are the changes found in Patchwork_10848_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_eio@in-flight-1us:
      shard-glk:          PASS -> FAIL (fdo#105957)

    igt@gem_exec_schedule@pi-ringfull-bsd:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#103158) +1

    igt@gem_ppgtt@blt-vs-render-ctxn:
      shard-skl:          NOTRUN -> TIMEOUT (fdo#108039)

    igt@kms_busy@extended-modeset-hang-newfb-render-c:
      {shard-iclb}:       NOTRUN -> DMESG-WARN (fdo#107956) +3

    igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
      shard-snb:          NOTRUN -> DMESG-WARN (fdo#107956) +1

    igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c:
      shard-skl:          NOTRUN -> DMESG-WARN (fdo#107956)

    igt@kms_ccs@pipe-a-crc-primary-rotation-180:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#107725) +4

    igt@kms_chv_cursor_fail@pipe-c-128x128-bottom-edge:
      shard-glk:          PASS -> DMESG-WARN (fdo#106538, fdo#105763) +1
      shard-skl:          NOTRUN -> FAIL (fdo#104671)

    igt@kms_color@pipe-c-ctm-max:
      shard-apl:          PASS -> FAIL (fdo#108147)

    igt@kms_cursor_crc@cursor-256x85-sliding:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#103232) +6

    igt@kms_cursor_crc@cursor-size-change:
      shard-glk:          PASS -> FAIL (fdo#103232)

    igt@kms_fbcon_fbt@psr:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#107882)

    igt@kms_flip@flip-vs-expired-vblank:
      shard-skl:          PASS -> FAIL (fdo#105363)

    igt@kms_flip@plain-flip-fb-recreate:
      shard-skl:          PASS -> FAIL (fdo#100368)

    igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#103167)

    igt@kms_frontbuffer_tracking@fbcpsr-stridechange:
      shard-skl:          NOTRUN -> FAIL (fdo#105683)

    igt@kms_hdmi_inject@inject-audio:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#102370)

    igt@kms_plane@pixel-format-pipe-c-planes:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#103166) +1

    igt@kms_plane@plane-position-covered-pipe-c-planes:
      shard-apl:          PASS -> FAIL (fdo#103166) +2

    igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
      shard-skl:          NOTRUN -> FAIL (fdo#107815, fdo#108145)

    igt@kms_plane_scaling@pipe-b-scaler-with-rotation:
      {shard-iclb}:       NOTRUN -> DMESG-WARN (fdo#107724) +1

    igt@kms_rotation_crc@primary-rotation-180:
      shard-snb:          NOTRUN -> FAIL (fdo#103925)
      shard-skl:          NOTRUN -> FAIL (fdo#107815, fdo#103925)

    igt@kms_vblank@pipe-c-ts-continuation-suspend:
      shard-skl:          NOTRUN -> INCOMPLETE (fdo#104108, fdo#107773)

    igt@pm_rpm@pm-tiling:
      {shard-iclb}:       PASS -> DMESG-WARN (fdo#107724)

    
    ==== Possible fixes ====

    igt@gem_eio@in-flight-10ms:
      shard-glk:          FAIL (fdo#107799) -> PASS

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
      shard-skl:          FAIL (fdo#108470, fdo#108228) -> PASS

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
      shard-skl:          FAIL (fdo#108470, fdo#107815) -> PASS

    igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
      shard-hsw:          DMESG-WARN (fdo#107956) -> PASS

    igt@kms_chv_cursor_fail@pipe-a-128x128-left-edge:
      shard-skl:          FAIL (fdo#104671) -> PASS

    igt@kms_color@pipe-a-ctm-max:
      shard-apl:          FAIL (fdo#108147) -> PASS

    igt@kms_cursor_crc@cursor-256x256-dpms:
      shard-skl:          FAIL (fdo#103232) -> PASS +1

    igt@kms_cursor_crc@cursor-64x21-onscreen:
      shard-glk:          FAIL (fdo#103232) -> PASS +1

    igt@kms_cursor_crc@cursor-64x64-dpms:
      shard-apl:          FAIL (fdo#103232) -> PASS +4

    igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
      shard-hsw:          FAIL (fdo#105767) -> PASS

    igt@kms_draw_crc@draw-method-xrgb2101010-mmap-wc-xtiled:
      shard-skl:          FAIL (fdo#103184) -> PASS

    igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled:
      shard-skl:          FAIL (fdo#107791) -> PASS

    igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
      shard-glk:          FAIL (fdo#105363) -> PASS

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu:
      shard-apl:          FAIL (fdo#103167) -> PASS +1

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
      {shard-iclb}:       FAIL (fdo#103167) -> PASS +3

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-wc:
      shard-glk:          FAIL (fdo#103167) -> PASS +1

    igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-cpu:
      shard-skl:          FAIL (fdo#103167) -> PASS +7

    igt@kms_plane@plane-panning-bottom-right-pipe-c-planes:
      shard-skl:          FAIL (fdo#103166) -> PASS

    igt@kms_plane_alpha_blend@pipe-a-coverage-7efc:
      shard-skl:          FAIL (fdo#107815, fdo#108145) -> PASS

    igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
      {shard-iclb}:       FAIL (fdo#103166) -> PASS +1

    igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
      shard-apl:          FAIL (fdo#103166) -> PASS +4

    igt@pm_rpm@legacy-planes:
      shard-skl:          INCOMPLETE (fdo#105959, fdo#107807) -> PASS

    igt@pm_rpm@system-suspend:
      shard-skl:          INCOMPLETE (fdo#104108, fdo#107807) -> PASS

    
    ==== Warnings ====

    igt@i915_suspend@shrink:
      shard-skl:          DMESG-WARN (fdo#108784) -> INCOMPLETE (fdo#106886)
      shard-apl:          DMESG-WARN (fdo#108784) -> INCOMPLETE (fdo#106886, fdo#103927)

    
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102370 https://bugs.freedesktop.org/show_bug.cgi?id=102370
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103184 https://bugs.freedesktop.org/show_bug.cgi?id=103184
  fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
  fdo#104671 https://bugs.freedesktop.org/show_bug.cgi?id=104671
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105683 https://bugs.freedesktop.org/show_bug.cgi?id=105683
  fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
  fdo#105767 https://bugs.freedesktop.org/show_bug.cgi?id=105767
  fdo#105957 https://bugs.freedesktop.org/show_bug.cgi?id=105957
  fdo#105959 https://bugs.freedesktop.org/show_bug.cgi?id=105959
  fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  fdo#107724 https://bugs.freedesktop.org/show_bug.cgi?id=107724
  fdo#107725 https://bugs.freedesktop.org/show_bug.cgi?id=107725
  fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773
  fdo#107791 https://bugs.freedesktop.org/show_bug.cgi?id=107791
  fdo#107799 https://bugs.freedesktop.org/show_bug.cgi?id=107799
  fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
  fdo#107815 https://bugs.freedesktop.org/show_bug.cgi?id=107815
  fdo#107882 https://bugs.freedesktop.org/show_bug.cgi?id=107882
  fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
  fdo#108039 https://bugs.freedesktop.org/show_bug.cgi?id=108039
  fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
  fdo#108147 https://bugs.freedesktop.org/show_bug.cgi?id=108147
  fdo#108228 https://bugs.freedesktop.org/show_bug.cgi?id=108228
  fdo#108470 https://bugs.freedesktop.org/show_bug.cgi?id=108470
  fdo#108784 https://bugs.freedesktop.org/show_bug.cgi?id=108784


== Participating hosts (7 -> 7) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_5161 -> Patchwork_10848

  CI_DRM_5161: 641f11d83579a00ff2ee757b1b587a7b1e8637f9 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4720: c27aaca295d3ca2a38521e571c012449371e4bb5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10848: 893a79381bc011db2141e66956b8c7cd91fafda1 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10848/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915: Write GPU relocs harder with gen3
  2018-11-19 15:41 [PATCH] drm/i915: Write GPU relocs harder with gen3 Chris Wilson
  2018-11-19 16:19 ` ✓ Fi.CI.BAT: success for " Patchwork
  2018-11-19 21:30 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-11-20  9:48 ` Joonas Lahtinen
  2018-11-20  9:51   ` Chris Wilson
  2 siblings, 1 reply; 5+ messages in thread
From: Joonas Lahtinen @ 2018-11-20  9:48 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

Quoting Chris Wilson (2018-11-19 17:41:53)
> Under moderate amounts of GPU stress, we can observe on Bearlake and
> Pineview (later gen3 models) that we execute the following batch buffer
> before the write into the batch is coherent. Adding extra (tested with
> upto 32x) MI_FLUSH to either the invalidation, flush or both phases does
> not solve the incoherency issue with the relocations, but emitting the
> MI_STORE_DWORD_IMM twice does. So be it.
> 
> Fixes: 7dd4f6729f92 ("drm/i915: Async GPU relocation processing")
> Testcase: igt/gem_tiled_fence_blits # blb/pnv
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

<SNIP>

> +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> @@ -1268,7 +1268,7 @@ relocate_entry(struct i915_vma *vma,
>                 else if (gen >= 4)
>                         len = 4;
>                 else
> -                       len = 3;
> +                       len = 6;
>  
>                 batch = reloc_gpu(eb, vma, len);
>                 if (IS_ERR(batch))
> @@ -1309,6 +1309,11 @@ relocate_entry(struct i915_vma *vma,
>                         *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
>                         *batch++ = addr;
>                         *batch++ = target_offset;
> +
> +                       /* And again for good measure (blb/pnv) */
> +                       *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
> +                       *batch++ = addr;
> +                       *batch++ = target_offset;

I guess you already balanced between for() loop and this, maybe this is
clearer.

Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

Regards, Joonas
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915: Write GPU relocs harder with gen3
  2018-11-20  9:48 ` [PATCH] " Joonas Lahtinen
@ 2018-11-20  9:51   ` Chris Wilson
  0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2018-11-20  9:51 UTC (permalink / raw)
  To: Joonas Lahtinen, intel-gfx

Quoting Joonas Lahtinen (2018-11-20 09:48:36)
> Quoting Chris Wilson (2018-11-19 17:41:53)
> > Under moderate amounts of GPU stress, we can observe on Bearlake and
> > Pineview (later gen3 models) that we execute the following batch buffer
> > before the write into the batch is coherent. Adding extra (tested with
> > upto 32x) MI_FLUSH to either the invalidation, flush or both phases does
> > not solve the incoherency issue with the relocations, but emitting the
> > MI_STORE_DWORD_IMM twice does. So be it.
> > 
> > Fixes: 7dd4f6729f92 ("drm/i915: Async GPU relocation processing")
> > Testcase: igt/gem_tiled_fence_blits # blb/pnv
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> 
> <SNIP>
> 
> > +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> > @@ -1268,7 +1268,7 @@ relocate_entry(struct i915_vma *vma,
> >                 else if (gen >= 4)
> >                         len = 4;
> >                 else
> > -                       len = 3;
> > +                       len = 6;
> >  
> >                 batch = reloc_gpu(eb, vma, len);
> >                 if (IS_ERR(batch))
> > @@ -1309,6 +1309,11 @@ relocate_entry(struct i915_vma *vma,
> >                         *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
> >                         *batch++ = addr;
> >                         *batch++ = target_offset;
> > +
> > +                       /* And again for good measure (blb/pnv) */
> > +                       *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL;
> > +                       *batch++ = addr;
> > +                       *batch++ = target_offset;
> 
> I guess you already balanced between for() loop and this, maybe this is
> clearer.

Given c99 for-loops, it would be a no brainer. It's a wart, it should be
ugly!
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-11-20  9:51 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-19 15:41 [PATCH] drm/i915: Write GPU relocs harder with gen3 Chris Wilson
2018-11-19 16:19 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-11-19 21:30 ` ✓ Fi.CI.IGT: " Patchwork
2018-11-20  9:48 ` [PATCH] " Joonas Lahtinen
2018-11-20  9:51   ` Chris Wilson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.