[Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset
== Series Details == Series: series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset URL : https://patchwork.freedesktop.org/series/62986/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385_full -> Patchwork_13475_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13475_full that come from known issues: ### IGT changes ### Issues hit * igt@gem_ctx_isolation@rcs0-s3: - shard-kbl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +3 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-kbl7/igt@gem_ctx_isolat...@rcs0-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-kbl6/igt@gem_ctx_isolat...@rcs0-s3.html * igt@gem_exec_suspend@basic-s3: - shard-skl: [PASS][3] -> [INCOMPLETE][4] ([fdo#104108]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl10/igt@gem_exec_susp...@basic-s3.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-skl9/igt@gem_exec_susp...@basic-s3.html * igt@gem_tiled_swapping@non-threaded: - shard-iclb: [PASS][5] -> [DMESG-WARN][6] ([fdo#108686] / [fdo#110853]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb4/igt@gem_tiled_swapp...@non-threaded.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-iclb3/igt@gem_tiled_swapp...@non-threaded.html * igt@i915_suspend@fence-restore-tiled2untiled: - shard-apl: [PASS][7] -> [DMESG-WARN][8] ([fdo#108566]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-apl5/igt@i915_susp...@fence-restore-tiled2untiled.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-apl8/igt@i915_susp...@fence-restore-tiled2untiled.html * igt@kms_busy@extended-modeset-hang-oldfb-with-reset-render-a: - shard-iclb: [PASS][9] -> [INCOMPLETE][10] ([fdo#107713]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb6/igt@kms_b...@extended-modeset-hang-oldfb-with-reset-render-a.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-iclb7/igt@kms_b...@extended-modeset-hang-oldfb-with-reset-render-a.html * igt@kms_flip@flip-vs-suspend: - shard-snb: [PASS][11] -> [INCOMPLETE][12] ([fdo#105411]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-snb4/igt@kms_f...@flip-vs-suspend.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-snb1/igt@kms_f...@flip-vs-suspend.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite: - shard-iclb: [PASS][13] -> [FAIL][14] ([fdo#103167]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb4/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-iclb1/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite.html * igt@kms_plane_lowres@pipe-a-tiling-x: - shard-iclb: [PASS][15] -> [FAIL][16] ([fdo#103166]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb8/igt@kms_plane_low...@pipe-a-tiling-x.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-iclb6/igt@kms_plane_low...@pipe-a-tiling-x.html * igt@kms_psr@psr2_sprite_mmap_gtt: - shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109441]) +3 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-iclb1/igt@kms_psr@psr2_sprite_mmap_gtt.html * igt@kms_setmode@basic: - shard-skl: [PASS][19] -> [FAIL][20] ([fdo#99912]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl2/igt@kms_setm...@basic.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-skl10/igt@kms_setm...@basic.html Possible fixes * igt@gem_eio@in-flight-suspend: - shard-skl: [INCOMPLETE][21] ([fdo#104108]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl5/igt@gem_...@in-flight-suspend.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-skl7/igt@gem_...@in-flight-suspend.html * igt@gem_tiled_swapping@non-threaded: - shard-hsw: [FAIL][23] ([fdo#108686]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-hsw2/igt@gem_tiled_swapp...@non-threaded.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/shard-hsw4/igt@gem_tiled_swapp...@non-threaded.html * igt@i915_suspend@sysfs-reader: - shard-apl: [DMESG-WARN][25] ([fdo#108566]) -> [PASS][26] +1 similar issue [25]:
[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: CTS fixes (rev8)
== Series Details == Series: drm/i915: CTS fixes (rev8) URL : https://patchwork.freedesktop.org/series/62437/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385_full -> Patchwork_13474_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13474_full that come from known issues: ### IGT changes ### Issues hit * igt@gem_ctx_isolation@vecs0-s3: - shard-apl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +2 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-apl2/igt@gem_ctx_isolat...@vecs0-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-apl3/igt@gem_ctx_isolat...@vecs0-s3.html * igt@gem_tiled_swapping@non-threaded: - shard-apl: [PASS][3] -> [DMESG-WARN][4] ([fdo#108686] / [fdo#110853]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-apl6/igt@gem_tiled_swapp...@non-threaded.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-apl2/igt@gem_tiled_swapp...@non-threaded.html - shard-glk: [PASS][5] -> [DMESG-WARN][6] ([fdo#108686] / [fdo#110853]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-glk3/igt@gem_tiled_swapp...@non-threaded.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-glk4/igt@gem_tiled_swapp...@non-threaded.html * igt@i915_pm_rpm@gem-mmap-gtt: - shard-iclb: [PASS][7] -> [INCOMPLETE][8] ([fdo#107713] / [fdo#108840]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb2/igt@i915_pm_...@gem-mmap-gtt.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-iclb2/igt@i915_pm_...@gem-mmap-gtt.html * igt@kms_color@pipe-b-ctm-negative: - shard-skl: [PASS][9] -> [FAIL][10] ([fdo#107361]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl4/igt@kms_co...@pipe-b-ctm-negative.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-skl2/igt@kms_co...@pipe-b-ctm-negative.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-kbl: [PASS][11] -> [DMESG-WARN][12] ([fdo#108566]) +5 similar issues [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-kbl3/igt@kms_cursor_...@pipe-c-cursor-suspend.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-kbl1/igt@kms_cursor_...@pipe-c-cursor-suspend.html * igt@kms_flip@2x-blocking-absolute-wf_vblank: - shard-hsw: [PASS][13] -> [SKIP][14] ([fdo#109271]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-hsw2/igt@kms_flip@2x-blocking-absolute-wf_vblank.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-hsw1/igt@kms_flip@2x-blocking-absolute-wf_vblank.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite: - shard-iclb: [PASS][15] -> [FAIL][16] ([fdo#103167]) +2 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb1/igt@kms_frontbuffer_track...@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-iclb2/igt@kms_frontbuffer_track...@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html * igt@kms_plane@plane-position-hole-dpms-pipe-c-planes: - shard-iclb: [PASS][17] -> [INCOMPLETE][18] ([fdo#107713]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb7/igt@kms_pl...@plane-position-hole-dpms-pipe-c-planes.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-iclb7/igt@kms_pl...@plane-position-hole-dpms-pipe-c-planes.html * igt@kms_psr@psr2_suspend: - shard-iclb: [PASS][19] -> [SKIP][20] ([fdo#109441]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb2/igt@kms_psr@psr2_suspend.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-iclb7/igt@kms_psr@psr2_suspend.html * igt@kms_setmode@basic: - shard-skl: [PASS][21] -> [FAIL][22] ([fdo#99912]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl2/igt@kms_setm...@basic.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-skl6/igt@kms_setm...@basic.html Possible fixes * igt@gem_eio@in-flight-suspend: - shard-skl: [INCOMPLETE][23] ([fdo#104108]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl5/igt@gem_...@in-flight-suspend.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/shard-skl8/igt@gem_...@in-flight-suspend.html * igt@gem_exec_balancer@smoke: - shard-iclb: [SKIP][25] ([fdo#110854]) -> [PASS][26] [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb5/igt@gem_exec_balan...@smoke.html [26]:
screen freeze with 5.2-rc6 Dell XPS-13 skylake i915
The symptoms are really weird: the screen image is locked in place. The machine is still functional and if I log in over the network I can do anything I like, including killing the X server and the display will never alter. It also seems that the system is accepting keyboard input because when it freezes I can cat information to a file (if the mouse was over an xterm) and verify over the network the file contents. Nothing unusual appears in dmesg when the lockup happens. The last kernel I booted successfully on the system was 5.0, so I'll try compiling 5.1 to narrow down the changes. James
[Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/2] drm/i915/guc: Avoid reclaim locks during reset
== Series Details == Series: series starting with [1/2] drm/i915/guc: Avoid reclaim locks during reset URL : https://patchwork.freedesktop.org/series/62973/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385_full -> Patchwork_13473_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13473_full that come from known issues: ### IGT changes ### Issues hit * igt@gem_ctx_isolation@vecs0-s3: - shard-apl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +2 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-apl2/igt@gem_ctx_isolat...@vecs0-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-apl8/igt@gem_ctx_isolat...@vecs0-s3.html * igt@gem_mmap_gtt@big-copy: - shard-glk: [PASS][3] -> [INCOMPLETE][4] ([fdo#103359] / [k.org#198133]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-glk7/igt@gem_mmap_...@big-copy.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-glk2/igt@gem_mmap_...@big-copy.html * igt@i915_pm_rpm@gem-mmap-cpu: - shard-iclb: [PASS][5] -> [INCOMPLETE][6] ([fdo#107713] / [fdo#108840]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb8/igt@i915_pm_...@gem-mmap-cpu.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-iclb2/igt@i915_pm_...@gem-mmap-cpu.html * igt@i915_pm_rpm@universal-planes: - shard-apl: [PASS][7] -> [INCOMPLETE][8] ([fdo#103927]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-apl8/igt@i915_pm_...@universal-planes.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-apl6/igt@i915_pm_...@universal-planes.html * igt@i915_selftest@mock_requests: - shard-skl: [PASS][9] -> [INCOMPLETE][10] ([fdo#110550]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl1/igt@i915_selftest@mock_requests.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-skl2/igt@i915_selftest@mock_requests.html * igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions: - shard-hsw: [PASS][11] -> [FAIL][12] ([fdo#103355]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-hsw2/igt@kms_cursor_leg...@cursor-vs-flip-atomic-transitions.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-hsw1/igt@kms_cursor_leg...@cursor-vs-flip-atomic-transitions.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions: - shard-skl: [PASS][13] -> [FAIL][14] ([fdo#102670]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl3/igt@kms_cursor_leg...@flip-vs-cursor-atomic-transitions.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-skl6/igt@kms_cursor_leg...@flip-vs-cursor-atomic-transitions.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-skl: [PASS][15] -> [FAIL][16] ([fdo#105363]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-skl5/igt@kms_f...@flip-vs-expired-vblank-interruptible.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-skl1/igt@kms_f...@flip-vs-expired-vblank-interruptible.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-wc: - shard-glk: [PASS][17] -> [FAIL][18] ([fdo#103167]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-glk2/igt@kms_frontbuffer_track...@fbc-1p-primscrn-cur-indfb-draw-mmap-wc.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-glk9/igt@kms_frontbuffer_track...@fbc-1p-primscrn-cur-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt: - shard-iclb: [PASS][19] -> [FAIL][20] ([fdo#103167]) +1 similar issue [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb1/igt@kms_frontbuffer_track...@fbc-1p-primscrn-spr-indfb-draw-blt.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-iclb2/igt@kms_frontbuffer_track...@fbc-1p-primscrn-spr-indfb-draw-blt.html * igt@kms_plane_lowres@pipe-a-tiling-x: - shard-iclb: [PASS][21] -> [FAIL][22] ([fdo#103166]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb8/igt@kms_plane_low...@pipe-a-tiling-x.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-iclb8/igt@kms_plane_low...@pipe-a-tiling-x.html * igt@kms_psr@psr2_sprite_mmap_gtt: - shard-iclb: [PASS][23] -> [SKIP][24] ([fdo#109441]) +3 similar issues [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/shard-iclb7/igt@kms_psr@psr2_sprite_mmap_gtt.html *
Re: [Intel-gfx] [PATCH V2] include: linux: Regularise the use of FIELD_SIZEOF macro
On Sat, 2019-06-29 at 17:25 +0300, Alexey Dobriyan wrote: > On Tue, Jun 11, 2019 at 03:00:10PM -0600, Andreas Dilger wrote: > > On Jun 11, 2019, at 2:48 PM, Andrew Morton > > wrote: > > > On Wed, 12 Jun 2019 01:08:36 +0530 Shyam Saini > > > wrote: > > I did a check, and FIELD_SIZEOF() is used about 350x, while sizeof_field() > > is about 30x, and SIZEOF_FIELD() is only about 5x. > > > > That said, I'm much more in favour of "sizeof_field()" or "sizeof_member()" > > than FIELD_SIZEOF(). Not only does that better match "offsetof()", with > > which it is closely related, but is also closer to the original "sizeof()". > > > > Since this is a rather trivial change, it can be split into a number of > > patches to get approval/landing via subsystem maintainers, and there is no > > huge urgency to remove the original macros until the users are gone. It > > would make sense to remove SIZEOF_FIELD() and sizeof_field() quickly so > > they don't gain more users, and the remaining FIELD_SIZEOF() users can be > > whittled away as the patches come through the maintainer trees. > > The signature should be > > sizeof_member(T, m) > > it is proper English, > it is lowercase, so is easier to type, > it uses standard term (member, not field), > it blends in with standard "sizeof" operator, yes please. Also, a simple script conversion applied immediately after an rc1 might be easiest rather than individual patches. ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/kms: Catch mode_object lifetime errors
On Fri, Jun 28, 2019 at 7:24 PM Sean Paul wrote: > > On Fri, Jun 14, 2019 at 08:17:23AM +0200, Daniel Vetter wrote: > > Only dynamic mode objects, i.e. those which are refcounted and have a free > > callback, can be added while the overall drm_device is visible to > > userspace. All others must be added before drm_dev_register and > > removed after drm_dev_unregister. > > > > Small issue around drivers still using the load/unload callbacks, we > > need to make sure we set dev->registered so that load/unload code in > > these callbacks doesn't trigger false warnings. Only a small > > adjustement in drm_dev_register was needed. > > > > Motivated by some irc discussions about object ids of dynamic objects > > like blobs become invalid, and me going on a bit an audit spree. > > > > Seems like a very worthwhile change, any idea how many drivers are going > to be sad after this change? None I think/hope, really just defense WARN_ON just in case. The main ones that would be sad are all the ones that have a ->load callback, but I'm taking care of them. Everyone else does things correctly and calls drm_dev_register last in their probe function (or around where they set up fbdev, which is also register the driver at least to the fbdev world, so really the same). > > Signed-off-by: Daniel Vetter > > --- > > drivers/gpu/drm/drm_drv.c | 4 ++-- > > drivers/gpu/drm/drm_mode_object.c | 4 > > 2 files changed, 6 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c > > index cb6f0245de7c..48c84e3e1931 100644 > > --- a/drivers/gpu/drm/drm_drv.c > > +++ b/drivers/gpu/drm/drm_drv.c > > @@ -997,14 +997,14 @@ int drm_dev_register(struct drm_device *dev, unsigned > > long flags) > > if (ret) > > goto err_minors; > > > > - dev->registered = true; > > - > > if (dev->driver->load) { > > ret = dev->driver->load(dev, flags); > > if (ret) > > goto err_minors; > > } > > > > + dev->registered = true; > > + > > if (drm_core_check_feature(dev, DRIVER_MODESET)) > > drm_modeset_register_all(dev); > > > > diff --git a/drivers/gpu/drm/drm_mode_object.c > > b/drivers/gpu/drm/drm_mode_object.c > > index 1c6e51135962..c355ba8e6d5d 100644 > > --- a/drivers/gpu/drm/drm_mode_object.c > > +++ b/drivers/gpu/drm/drm_mode_object.c > > @@ -42,6 +42,8 @@ int __drm_mode_object_add(struct drm_device *dev, struct > > drm_mode_object *obj, > > { > > int ret; > > > > + WARN_ON(dev->registered && !obj_free_cb); > > These should probably have a comment above them giving some guidance to the > driver developer. > > With some comments, this is: What comment do you expect here? drm_dev_register explains what you should do already, and I expect driver developers to find that one pretty quickly. From there: "This should be done last in the device initialization sequence to make sure userspace can't access an inconsistent state." -Daniel > Reviewed-by: Sean Paul > > > > + > > mutex_lock(>mode_config.idr_mutex); > > ret = idr_alloc(>mode_config.object_idr, register_obj ? obj : > > NULL, > > 1, 0, GFP_KERNEL); > > @@ -102,6 +104,8 @@ void drm_mode_object_register(struct drm_device *dev, > > void drm_mode_object_unregister(struct drm_device *dev, > > struct drm_mode_object *object) > > { > > + WARN_ON(dev->registered && !object->free_cb); > > + > > mutex_lock(>mode_config.idr_mutex); > > if (object->id) { > > idr_remove(>mode_config.object_idr, object->id); > > -- > > 2.20.1 > > > > ___ > > dri-devel mailing list > > dri-de...@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > > -- > Sean Paul, Software Engineer, Google / Chromium OS -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset
== Series Details == Series: series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset URL : https://patchwork.freedesktop.org/series/62986/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385 -> Patchwork_13475 Summary --- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/ Known issues Here are the changes found in Patchwork_13475 that come from known issues: ### IGT changes ### Issues hit * igt@gem_cpu_reloc@basic: - fi-icl-u3: [PASS][1] -> [DMESG-WARN][2] ([fdo#107724]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-u3/igt@gem_cpu_re...@basic.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-icl-u3/igt@gem_cpu_re...@basic.html * igt@i915_pm_rpm@basic-pci-d3-state: - fi-kbl-r: [PASS][3] -> [DMESG-WARN][4] ([fdo#111012]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-r/igt@i915_pm_...@basic-pci-d3-state.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-kbl-r/igt@i915_pm_...@basic-pci-d3-state.html * igt@i915_selftest@live_blt: - fi-skl-iommu: [PASS][5] -> [INCOMPLETE][6] ([fdo#108602]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-skl-iommu/igt@i915_selftest@live_blt.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-skl-iommu/igt@i915_selftest@live_blt.html * igt@kms_frontbuffer_tracking@basic: - fi-icl-dsi: [PASS][7] -> [DMESG-FAIL][8] ([fdo#103167] / [fdo#106107]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-dsi/igt@kms_frontbuffer_track...@basic.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-icl-dsi/igt@kms_frontbuffer_track...@basic.html Possible fixes * igt@gem_exec_suspend@basic-s4-devices: - fi-blb-e6850: [INCOMPLETE][9] ([fdo#107718]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html * igt@i915_pm_rpm@module-reload: - fi-cml-u: [DMESG-WARN][11] ([fdo#111012]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-cml-u/igt@i915_pm_...@module-reload.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-cml-u/igt@i915_pm_...@module-reload.html * igt@i915_selftest@live_blt: - fi-icl-dsi: [INCOMPLETE][13] ([fdo#107713]) -> [PASS][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-dsi/igt@i915_selftest@live_blt.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/fi-icl-dsi/igt@i915_selftest@live_blt.html [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#106107]: https://bugs.freedesktop.org/show_bug.cgi?id=106107 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718 [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [fdo#108602]: https://bugs.freedesktop.org/show_bug.cgi?id=108602 [fdo#111012]: https://bugs.freedesktop.org/show_bug.cgi?id=111012 Participating hosts (51 -> 43) -- Additional (2): fi-bdw-gvtdvm fi-skl-gvtdvm Missing(10): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-icl-y fi-icl-guc fi-byt-clapper fi-bdw-samus Build changes - * Linux: CI_DRM_6385 -> Patchwork_13475 CI_DRM_6385: 25969d0b2ad59fac64891281e70efa0714084345 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5075: 03779dd3de8a57544f124d9952a6d2b3e34e34ca @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_13475: 8ac661f365ac81238e27646ea94620f1a50fe0a6 @ git://anongit.freedesktop.org/gfx-ci/linux == Kernel 32bit build == Warning: Kernel 32bit buildtest failed: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13475/build_32bit.log CALLscripts/checksyscalls.sh CALLscripts/atomic/check-atomics.sh CHK include/generated/compile.h Kernel: arch/x86/boot/bzImage is ready (#1) Building modules, stage 2. MODPOST 112 modules ERROR: "__udivdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! ERROR: "__divdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! scripts/Makefile.modpost:91: recipe for target '__modpost' failed make[1]: *** [__modpost] Error 1 Makefile:1287: recipe for target 'modules' failed make: *** [modules] Error 2 == Linux commits == 8ac661f365ac drm/i915/execlists: Hesitate before slicing 5783e6028649 drm/i915/execlists: Refactor CSB state machine ab6c132968ae drm/i915: Mark up vma->active as safe for use inside shrinkers bf4b7ae6ac27 drm/i915: Markup potential lock
Re: [Intel-gfx] [PATCH] drm/i915: fix whitelist selftests with readonly registers
Ship it! On 29/06/2019 16:13, Chris Wilson wrote: From: Lionel Landwerlin When a register is readonly there is not much we can tell about its value (apart from its default value?). This can be covered by tests exercising the value of the register from userspace. For PS_INVOCATION_COUNT we've got the following piglit tests : KHR-GL45.pipeline_statistics_query_tests_ARB.functional_fragment_shader_invocations Vulkan CTS tests : dEQP-VK.query_pool.statistics_query.fragment_shader_invocations.* v2: Use a local to shrink under 80cols. Signed-off-by: Lionel Landwerlin Fixes: 86554f48e511 ("drm/i915/selftests: Verify whitelist of context registers") Tested-by: Anuj Phogat Signed-off-by: Chris Wilson --- Fixes is a bit much, since the test is still very much nerfed and not complemented by a test for read-only non-priv registers... -Chris --- drivers/gpu/drm/i915/gt/selftest_workarounds.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gt/selftest_workarounds.c b/drivers/gpu/drm/i915/gt/selftest_workarounds.c index f12cb20fe785..b933d831eeb1 100644 --- a/drivers/gpu/drm/i915/gt/selftest_workarounds.c +++ b/drivers/gpu/drm/i915/gt/selftest_workarounds.c @@ -926,7 +926,12 @@ check_whitelisted_registers(struct intel_engine_cs *engine, err = 0; for (i = 0; i < engine->whitelist.count; i++) { - if (!fn(engine, a[i], b[i], engine->whitelist.list[i].reg)) + const struct i915_wa *wa = >whitelist.list[i]; + + if (i915_mmio_reg_offset(wa->reg) & RING_FORCE_TO_NONPRIV_RD) + continue; + + if (!fn(engine, a[i], b[i], wa->reg)) err = -EINVAL; } ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset
== Series Details == Series: series starting with [1/5] drm/i915/guc: Avoid reclaim locks during reset URL : https://patchwork.freedesktop.org/series/62986/ State : warning == Summary == $ dim sparse origin/drm-tip Sparse version: v0.5.2 Commit: drm/i915/guc: Avoid reclaim locks during reset Okay! Commit: drm/i915: Markup potential lock for i915_active Okay! Commit: drm/i915: Mark up vma->active as safe for use inside shrinkers Okay! Commit: drm/i915/execlists: Refactor CSB state machine Okay! Commit: drm/i915/execlists: Hesitate before slicing -O:drivers/gpu/drm/i915/gt/intel_lrc.c:899:16: warning: expression using sizeof(void) -O:drivers/gpu/drm/i915/gt/intel_lrc.c:899:16: warning: expression using sizeof(void) +drivers/gpu/drm/i915/gt/intel_lrc.c:899:16: warning: expression using sizeof(void) +drivers/gpu/drm/i915/gt/intel_lrc.c:899:16: warning: expression using sizeof(void) ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH i-g-t] tests/i915/gem_ctx_switch: Update with engine discovery
Quoting Tvrtko Ursulin (2019-06-27 11:20:19) > From: Tvrtko Ursulin > > I converted this one as an example, or at least to drive the discussion, > how more complex tests can be converted. > > I have kept the legacy execbuf abi testing prefixed with "legacy-". > > New tests were added to exercise physical engines via engine discovery and > also "all" tests have been updated in the same way. > > To keep things simpler and avoid having to create separate contexts legacy > tests have to be first since the __for_each_physical_engine iterator would > otherwise configure the default context and confuse the test. > > So legacy tests run on the unconfigured (with engine map) context and use > a new helper gem_eb_flags_to_engine to look up the engine from the > intel_execution_engines2 static list. This is only to enable the core test > code to be shared. Note that this misses the I915_EXEC_DEFAULT slot. That a rather significant oversight. -Chris ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: CTS fixes (rev8)
== Series Details == Series: drm/i915: CTS fixes (rev8) URL : https://patchwork.freedesktop.org/series/62437/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385 -> Patchwork_13474 Summary --- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/ Known issues Here are the changes found in Patchwork_13474 that come from known issues: ### IGT changes ### Issues hit * igt@gem_basic@create-fd-close: - fi-icl-dsi: [PASS][1] -> [INCOMPLETE][2] ([fdo#107713]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-dsi/igt@gem_ba...@create-fd-close.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-icl-dsi/igt@gem_ba...@create-fd-close.html * igt@gem_mmap_gtt@basic-read-write-distinct: - fi-icl-u3: [PASS][3] -> [DMESG-WARN][4] ([fdo#107724]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-u3/igt@gem_mmap_...@basic-read-write-distinct.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-icl-u3/igt@gem_mmap_...@basic-read-write-distinct.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [PASS][5] -> [FAIL][6] ([fdo#109485]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-7500u/igt@kms_chamel...@hdmi-hpd-fast.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-kbl-7500u/igt@kms_chamel...@hdmi-hpd-fast.html Possible fixes * igt@gem_exec_suspend@basic-s4-devices: - fi-blb-e6850: [INCOMPLETE][7] ([fdo#107718]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html * igt@i915_pm_rpm@basic-rte: - fi-kbl-r: [DMESG-WARN][9] ([fdo#111012]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-r/igt@i915_pm_...@basic-rte.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-kbl-r/igt@i915_pm_...@basic-rte.html * igt@i915_pm_rpm@module-reload: - fi-cml-u: [DMESG-WARN][11] ([fdo#111012]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-cml-u/igt@i915_pm_...@module-reload.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/fi-cml-u/igt@i915_pm_...@module-reload.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718 [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485 [fdo#111012]: https://bugs.freedesktop.org/show_bug.cgi?id=111012 Participating hosts (51 -> 42) -- Additional (1): fi-skl-gvtdvm Missing(10): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-pnv-d510 fi-icl-y fi-byt-clapper fi-bdw-samus Build changes - * Linux: CI_DRM_6385 -> Patchwork_13474 CI_DRM_6385: 25969d0b2ad59fac64891281e70efa0714084345 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5075: 03779dd3de8a57544f124d9952a6d2b3e34e34ca @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_13474: bc5b2156f922a93198b12069686ec03ca405c049 @ git://anongit.freedesktop.org/gfx-ci/linux == Kernel 32bit build == Warning: Kernel 32bit buildtest failed: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/build_32bit.log CALLscripts/checksyscalls.sh CALLscripts/atomic/check-atomics.sh CHK include/generated/compile.h Kernel: arch/x86/boot/bzImage is ready (#1) Building modules, stage 2. MODPOST 112 modules ERROR: "__udivdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! ERROR: "__divdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! scripts/Makefile.modpost:91: recipe for target '__modpost' failed make[1]: *** [__modpost] Error 1 Makefile:1287: recipe for target 'modules' failed make: *** [modules] Error 2 == Linux commits == bc5b2156f922 drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT b2832f02b355 drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT 96062a805ac2 drm/i915: fix whitelist selftests with readonly registers == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13474/ ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 4/5] drm/i915/execlists: Refactor CSB state machine
Daniele pointed out that the CSB status information will change with Tigerlake and suggested that we could rearrange our state machine to hide the differences in generation. gcc also prefers the explicit state machine, so make it so: process_csb 19801967 -13 Suggested-by: Daniele Ceraolo Spurio Signed-off-by: Chris Wilson Cc: Daniele Ceraolo Spurio Cc: Tvrtko Ursulin Cc: Mika Kuoppala --- drivers/gpu/drm/i915/gt/intel_lrc.c | 64 - 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index 471e134de186..953b3938a85f 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -1279,6 +1279,30 @@ reset_in_progress(const struct intel_engine_execlists *execlists) return unlikely(!__tasklet_is_enabled(>tasklet)); } +enum csb_step { + CSB_NOP, + CSB_PROMOTE, + CSB_PREEMPT, + CSB_COMPLETE, +}; + +static inline enum csb_step +csb_parse(const struct intel_engine_execlists *execlists, const u32 *csb) +{ + unsigned int status = *csb; + + if (status & GEN8_CTX_STATUS_IDLE_ACTIVE) + return CSB_PROMOTE; + + if (status & GEN8_CTX_STATUS_PREEMPTED) + return CSB_PREEMPT; + + if (*execlists->active) + return CSB_COMPLETE; + + return CSB_NOP; +} + static void process_csb(struct intel_engine_cs *engine) { struct intel_engine_execlists * const execlists = >execlists; @@ -1316,8 +1340,6 @@ static void process_csb(struct intel_engine_cs *engine) rmb(); do { - unsigned int status; - if (++head == num_entries) head = 0; @@ -1343,10 +1365,16 @@ static void process_csb(struct intel_engine_cs *engine) engine->name, head, buf[2 * head + 0], buf[2 * head + 1]); - status = buf[2 * head]; - if (status & GEN8_CTX_STATUS_IDLE_ACTIVE) { + switch (csb_parse(execlists, buf + 2 * head)) { + case CSB_PREEMPT: /* cancel old inflight, prepare for switch */ + trace_ports(execlists, "preempted", execlists->active); + + while (*execlists->active) + execlists_schedule_out(*execlists->active++); + + /* fallthrough */ + case CSB_PROMOTE: /* switch pending to inflight */ GEM_BUG_ON(*execlists->active); -promote: GEM_BUG_ON(!assert_pending_valid(execlists, "promote")); execlists->active = memcpy(execlists->inflight, @@ -1355,25 +1383,17 @@ static void process_csb(struct intel_engine_cs *engine) sizeof(*execlists->pending)); execlists->pending[0] = NULL; + trace_ports(execlists, "promoted", execlists->active); + if (enable_timeslice(engine)) mod_timer(>timer, jiffies + 1); if (!inject_preempt_hang(execlists)) ring_set_paused(engine, 0); - } else if (status & GEN8_CTX_STATUS_PREEMPTED) { - struct i915_request * const *port = execlists->active; - - trace_ports(execlists, "preempted", execlists->active); - - while (*port) - execlists_schedule_out(*port++); - - goto promote; - } else if (*execlists->active) { - struct i915_request *rq = *execlists->active++; + break; - trace_ports(execlists, "completed", - execlists->active - 1); + case CSB_COMPLETE: /* port0 completed, advanced to port1 */ + trace_ports(execlists, "completed", execlists->active); /* * We rely on the hardware being strongly @@ -1381,11 +1401,15 @@ static void process_csb(struct intel_engine_cs *engine) * coherent (visible from the CPU) before the * user interrupt and CSB is processed. */ - GEM_BUG_ON(!i915_request_completed(rq)); - execlists_schedule_out(rq); + GEM_BUG_ON(!i915_request_completed(*execlists->active)); + execlists_schedule_out(*execlists->active++); GEM_BUG_ON(execlists->active - execlists->inflight > execlists_num_ports(execlists)); + break; + + case CSB_NOP: + break;
[Intel-gfx] [PATCH 1/5] drm/i915/guc: Avoid reclaim locks during reset
During reset, we must be very selective in which locks we take as most are tainted by being held across a wait or reclaim (kmalloc) which implicitly waits. Inside the guc reset path, we reset the ADS to sane defaults, but must keep it pinned from initialisation to avoid having to pin it during reset. Signed-off-by: Chris Wilson Cc: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/intel_guc.h | 4 drivers/gpu/drm/i915/intel_guc_ads.c | 26 +- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_guc.h b/drivers/gpu/drm/i915/intel_guc.h index d6a75bc3d7f4..d91c96679dbb 100644 --- a/drivers/gpu/drm/i915/intel_guc.h +++ b/drivers/gpu/drm/i915/intel_guc.h @@ -35,6 +35,8 @@ #include "i915_utils.h" #include "i915_vma.h" +struct __guc_ads_blob; + struct guc_preempt_work { struct work_struct work; struct intel_engine_cs *engine; @@ -65,6 +67,8 @@ struct intel_guc { } interrupts; struct i915_vma *ads_vma; + struct __guc_ads_blob *ads_blob; + struct i915_vma *stage_desc_pool; void *stage_desc_pool_vaddr; struct ida stage_ids; diff --git a/drivers/gpu/drm/i915/intel_guc_ads.c b/drivers/gpu/drm/i915/intel_guc_ads.c index ecb69fc94218..69859d1e047f 100644 --- a/drivers/gpu/drm/i915/intel_guc_ads.c +++ b/drivers/gpu/drm/i915/intel_guc_ads.c @@ -83,18 +83,14 @@ struct __guc_ads_blob { u8 reg_state_buffer[GUC_S3_SAVE_SPACE_PAGES * PAGE_SIZE]; } __packed; -static int __guc_ads_init(struct intel_guc *guc) +static void __guc_ads_init(struct intel_guc *guc) { struct drm_i915_private *dev_priv = guc_to_i915(guc); - struct __guc_ads_blob *blob; + struct __guc_ads_blob *blob = guc->ads_blob; const u32 skipped_size = LRC_PPHWSP_SZ * PAGE_SIZE + LR_HW_CONTEXT_SIZE; u32 base; u8 engine_class; - blob = i915_gem_object_pin_map(guc->ads_vma->obj, I915_MAP_WB); - if (IS_ERR(blob)) - return PTR_ERR(blob); - /* GuC scheduling policies */ guc_policies_init(>policies); @@ -144,9 +140,7 @@ static int __guc_ads_init(struct intel_guc *guc) blob->ads.gt_system_info = base + ptr_offset(blob, system_info); blob->ads.clients_info = base + ptr_offset(blob, clients_info); - i915_gem_object_unpin_map(guc->ads_vma->obj); - - return 0; + i915_gem_object_flush_map(guc->ads_vma->obj); } /** @@ -160,6 +154,7 @@ int intel_guc_ads_create(struct intel_guc *guc) { const u32 size = PAGE_ALIGN(sizeof(struct __guc_ads_blob)); struct i915_vma *vma; + void *blob; int ret; GEM_BUG_ON(guc->ads_vma); @@ -168,11 +163,16 @@ int intel_guc_ads_create(struct intel_guc *guc) if (IS_ERR(vma)) return PTR_ERR(vma); + blob = i915_gem_object_pin_map(vma->obj, I915_MAP_WB); + if (IS_ERR(blob)) { + ret = PTR_ERR(blob); + goto err_vma; + } + guc->ads_vma = vma; + guc->ads_blob = blob; - ret = __guc_ads_init(guc); - if (ret) - goto err_vma; + __guc_ads_init(guc); return 0; @@ -183,7 +183,7 @@ int intel_guc_ads_create(struct intel_guc *guc) void intel_guc_ads_destroy(struct intel_guc *guc) { - i915_vma_unpin_and_release(>ads_vma, 0); + i915_vma_unpin_and_release(>ads_vma, I915_VMA_RELEASE_MAP); } /** -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 2/5] drm/i915: Markup potential lock for i915_active
Make the lockchains more deterministic via i915_active by flagging the potential lock. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_active.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index cb6a1eadf7df..a55a0a954d74 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -268,6 +268,8 @@ int i915_active_wait(struct i915_active *ref) int err; might_sleep(); + might_lock(>mutex); + if (RB_EMPTY_ROOT(>tree)) return 0; -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 5/5] drm/i915/execlists: Hesitate before slicing
Be a little more hesitant before injecting a timeslice, and try to take into account any change in priority that is due for the running task before switching to another task. This will allow us to arbitrarily prevent switching away from a request if we deem it necessarily to disable preemption, for instance. Signed-off-by: Chris Wilson Cc: Tvrtko Ursulin Cc: Mika Kuoppala Cc: Lionel Landwerlin Acked-by: Lionel Landwerlin --- drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index 953b3938a85f..1e85e04c58c4 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -899,7 +899,7 @@ need_timeslice(struct intel_engine_cs *engine, const struct i915_request *rq) hint = max(rq_prio(list_next_entry(rq, sched.link)), engine->execlists.queue_priority_hint); - return hint >= rq_prio(rq); + return hint >= effective_prio(rq); } static bool -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 3/5] drm/i915: Mark up vma->active as safe for use inside shrinkers
Since a shrinker may be forced to wait on GPU activity, i915_active_wait(>active) must be safe for use inside a shrinker, and so let's mark up the lock as being acquired by the shrinker to avoid any nasty surprises creeping in. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_vma.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c index c20a3022cd80..ee73baf29415 100644 --- a/drivers/gpu/drm/i915/i915_vma.c +++ b/drivers/gpu/drm/i915/i915_vma.c @@ -22,6 +22,7 @@ * */ +#include #include #include "display/intel_frontbuffer.h" @@ -120,6 +121,13 @@ vma_create(struct drm_i915_gem_object *obj, __i915_vma_active, __i915_vma_retire); INIT_ACTIVE_REQUEST(>last_fence); + /* Declare ourselves safe for use inside shrinkers */ + if (IS_ENABLED(CONFIG_LOCKDEP)) { + fs_reclaim_acquire(GFP_KERNEL); + might_lock(>active.mutex); + fs_reclaim_release(GFP_KERNEL); + } + INIT_LIST_HEAD(>closed_link); if (view && view->type != I915_GGTT_VIEW_NORMAL) { -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: CTS fixes (rev8)
== Series Details == Series: drm/i915: CTS fixes (rev8) URL : https://patchwork.freedesktop.org/series/62437/ State : warning == Summary == $ dim checkpatch origin/drm-tip 96062a805ac2 drm/i915: fix whitelist selftests with readonly registers -:12: WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line) #12: KHR-GL45.pipeline_statistics_query_tests_ARB.functional_fragment_shader_invocations total: 0 errors, 1 warnings, 0 checks, 13 lines checked b2832f02b355 drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT -:11: WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line) #11: KHR-GL45.pipeline_statistics_query_tests_ARB.functional_fragment_shader_invocations (GL) total: 0 errors, 1 warnings, 0 checks, 26 lines checked bc5b2156f922 drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT -:14: WARNING:BAD_SIGN_OFF: Use a single space after Tested-by: #14: Tested-by: Anuj Phogat total: 0 errors, 1 warnings, 0 checks, 19 lines checked ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH] drm/i915: fix whitelist selftests with readonly registers
From: Lionel Landwerlin When a register is readonly there is not much we can tell about its value (apart from its default value?). This can be covered by tests exercising the value of the register from userspace. For PS_INVOCATION_COUNT we've got the following piglit tests : KHR-GL45.pipeline_statistics_query_tests_ARB.functional_fragment_shader_invocations Vulkan CTS tests : dEQP-VK.query_pool.statistics_query.fragment_shader_invocations.* v2: Use a local to shrink under 80cols. Signed-off-by: Lionel Landwerlin Fixes: 86554f48e511 ("drm/i915/selftests: Verify whitelist of context registers") Tested-by: Anuj Phogat Signed-off-by: Chris Wilson --- Fixes is a bit much, since the test is still very much nerfed and not complemented by a test for read-only non-priv registers... -Chris --- drivers/gpu/drm/i915/gt/selftest_workarounds.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gt/selftest_workarounds.c b/drivers/gpu/drm/i915/gt/selftest_workarounds.c index f12cb20fe785..b933d831eeb1 100644 --- a/drivers/gpu/drm/i915/gt/selftest_workarounds.c +++ b/drivers/gpu/drm/i915/gt/selftest_workarounds.c @@ -926,7 +926,12 @@ check_whitelisted_registers(struct intel_engine_cs *engine, err = 0; for (i = 0; i < engine->whitelist.count; i++) { - if (!fn(engine, a[i], b[i], engine->whitelist.list[i].reg)) + const struct i915_wa *wa = >whitelist.list[i]; + + if (i915_mmio_reg_offset(wa->reg) & RING_FORCE_TO_NONPRIV_RD) + continue; + + if (!fn(engine, a[i], b[i], wa->reg)) err = -EINVAL; } -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: CTS fixes (rev7)
Okay to land? -Lionel On 29/06/2019 06:33, Patchwork wrote: == Series Details == Series: drm/i915: CTS fixes (rev7) URL : https://patchwork.freedesktop.org/series/62437/ State : success == Summary == CI Bug Log - changes from CI_DRM_6380_full -> Patchwork_13469_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13469_full that come from known issues: ### IGT changes ### Issues hit * igt@gem_exec_balancer@smoke: - shard-iclb: [PASS][1] -> [SKIP][2] ([fdo#110854]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-iclb4/igt@gem_exec_balan...@smoke.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-iclb7/igt@gem_exec_balan...@smoke.html * igt@gem_exec_nop@basic-series: - shard-hsw: [PASS][3] -> [INCOMPLETE][4] ([fdo#103540]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-hsw1/igt@gem_exec_...@basic-series.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-hsw4/igt@gem_exec_...@basic-series.html * igt@gem_softpin@noreloc-s3: - shard-kbl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108566]) +2 similar issues [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-kbl1/igt@gem_soft...@noreloc-s3.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-kbl3/igt@gem_soft...@noreloc-s3.html * igt@gem_workarounds@suspend-resume-context: - shard-skl: [PASS][7] -> [INCOMPLETE][8] ([fdo#104108]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-skl6/igt@gem_workarou...@suspend-resume-context.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-skl1/igt@gem_workarou...@suspend-resume-context.html * igt@kms_color@pipe-c-ctm-negative: - shard-skl: [PASS][9] -> [FAIL][10] ([fdo#107361]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-skl7/igt@kms_co...@pipe-c-ctm-negative.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-skl3/igt@kms_co...@pipe-c-ctm-negative.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy: - shard-hsw: [PASS][11] -> [FAIL][12] ([fdo#105767]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-hsw5/igt@kms_cursor_leg...@2x-long-cursor-vs-flip-legacy.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-hsw1/igt@kms_cursor_leg...@2x-long-cursor-vs-flip-legacy.html * igt@kms_flip@2x-dpms-vs-vblank-race-interruptible: - shard-hsw: [PASS][13] -> [SKIP][14] ([fdo#109271]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-hsw2/igt@kms_f...@2x-dpms-vs-vblank-race-interruptible.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-hsw1/igt@kms_f...@2x-dpms-vs-vblank-race-interruptible.html * igt@kms_flip_tiling@flip-yf-tiled: - shard-skl: [PASS][15] -> [FAIL][16] ([fdo#108145]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-skl7/igt@kms_flip_til...@flip-yf-tiled.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-skl3/igt@kms_flip_til...@flip-yf-tiled.html * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw: - shard-iclb: [PASS][17] -> [FAIL][18] ([fdo#103167]) +1 similar issue [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-iclb3/igt@kms_frontbuffer_track...@fbc-1p-pri-indfb-multidraw.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-iclb4/igt@kms_frontbuffer_track...@fbc-1p-pri-indfb-multidraw.html * igt@kms_psr@psr2_sprite_plane_move: - shard-iclb: [PASS][19] -> [SKIP][20] ([fdo#109441]) +3 similar issues [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-iclb5/igt@kms_psr@psr2_sprite_plane_move.html * igt@kms_setmode@basic: - shard-kbl: [PASS][21] -> [FAIL][22] ([fdo#99912]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-kbl3/igt@kms_setm...@basic.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-kbl1/igt@kms_setm...@basic.html * igt@kms_sysfs_edid_timing: - shard-iclb: [PASS][23] -> [FAIL][24] ([fdo#100047]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-iclb6/igt@kms_sysfs_edid_timing.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13469/shard-iclb3/igt@kms_sysfs_edid_timing.html * igt@perf_pmu@rc6-runtime-pm: - shard-iclb: [PASS][25] -> [FAIL][26] ([fdo#105010]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6380/shard-iclb1/igt@perf_...@rc6-runtime-pm.html
[Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [v3,1/2] drm/i915: Add support for retrying hotplug
== Series Details == Series: series starting with [v3,1/2] drm/i915: Add support for retrying hotplug URL : https://patchwork.freedesktop.org/series/62965/ State : success == Summary == CI Bug Log - changes from CI_DRM_6384_full -> Patchwork_13471_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13471_full that come from known issues: ### IGT changes ### Issues hit * igt@i915_selftest@mock_requests: - shard-skl: [PASS][1] -> [INCOMPLETE][2] ([fdo#110550]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-skl3/igt@i915_selftest@mock_requests.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-skl1/igt@i915_selftest@mock_requests.html * igt@kms_color@pipe-b-ctm-negative: - shard-skl: [PASS][3] -> [FAIL][4] ([fdo#107361]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-skl5/igt@kms_co...@pipe-b-ctm-negative.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-skl3/igt@kms_co...@pipe-b-ctm-negative.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic: - shard-skl: [PASS][5] -> [FAIL][6] ([fdo#102670]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-skl10/igt@kms_cursor_leg...@flip-vs-cursor-atomic.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-skl8/igt@kms_cursor_leg...@flip-vs-cursor-atomic.html * igt@kms_flip@2x-blocking-absolute-wf_vblank: - shard-hsw: [PASS][7] -> [SKIP][8] ([fdo#109271]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-hsw2/igt@kms_flip@2x-blocking-absolute-wf_vblank.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-hsw1/igt@kms_flip@2x-blocking-absolute-wf_vblank.html * igt@kms_flip@flip-vs-suspend-interruptible: - shard-iclb: [PASS][9] -> [INCOMPLETE][10] ([fdo#107713] / [fdo#109507]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-iclb6/igt@kms_f...@flip-vs-suspend-interruptible.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-iclb3/igt@kms_f...@flip-vs-suspend-interruptible.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render: - shard-iclb: [PASS][11] -> [FAIL][12] ([fdo#103167]) +5 similar issues [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-iclb6/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-cur-indfb-draw-render.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-iclb5/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-cur-indfb-draw-render.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-apl: [PASS][13] -> [DMESG-WARN][14] ([fdo#108566]) +5 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-apl7/igt@kms_pl...@plane-panning-bottom-right-suspend-pipe-b-planes.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-apl7/igt@kms_pl...@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_plane_alpha_blend@pipe-a-coverage-7efc: - shard-skl: [PASS][15] -> [FAIL][16] ([fdo#108145]) +1 similar issue [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-skl3/igt@kms_plane_alpha_bl...@pipe-a-coverage-7efc.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-skl1/igt@kms_plane_alpha_bl...@pipe-a-coverage-7efc.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [PASS][17] -> [FAIL][18] ([fdo#108145] / [fdo#110403]) +1 similar issue [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-skl1/igt@kms_plane_alpha_bl...@pipe-c-coverage-7efc.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-skl1/igt@kms_plane_alpha_bl...@pipe-c-coverage-7efc.html * igt@kms_psr@psr2_cursor_render: - shard-iclb: [PASS][19] -> [SKIP][20] ([fdo#109441]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-iclb2/igt@kms_psr@psr2_cursor_render.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-iclb5/igt@kms_psr@psr2_cursor_render.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-kbl: [PASS][21] -> [DMESG-WARN][22] ([fdo#108566]) +2 similar issues [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-kbl7/igt@kms_vbl...@pipe-a-ts-continuation-suspend.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13471/shard-kbl1/igt@kms_vbl...@pipe-a-ts-continuation-suspend.html * igt@kms_vblank@pipe-c-ts-continuation-suspend: - shard-iclb: [PASS][23] -> [INCOMPLETE][24] ([fdo#107713]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6384/shard-iclb4/igt@kms_vbl...@pipe-c-ts-continuation-suspend.html [24]:
[Intel-gfx] [PATCH 5/9] docs: fix some broken references due to txt->rst renames
There are three left-overs from the recent file renames, probably due to some other conflicting patch. Fix them. Signed-off-by: Mauro Carvalho Chehab Acked-by: Wolfram Sang Acked-by: Daniel Vetter --- Documentation/devicetree/bindings/arm/idle-states.txt | 2 +- drivers/gpu/drm/i915/intel_runtime_pm.h | 2 +- drivers/i2c/busses/i2c-nvidia-gpu.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/arm/idle-states.txt b/Documentation/devicetree/bindings/arm/idle-states.txt index 3bdbe675b9e6..d8d9aa7167e8 100644 --- a/Documentation/devicetree/bindings/arm/idle-states.txt +++ b/Documentation/devicetree/bindings/arm/idle-states.txt @@ -703,4 +703,4 @@ cpus { https://www.devicetree.org/specifications/ [6] ARM Linux Kernel documentation - Booting AArch64 Linux -Documentation/arm64/booting.txt +Documentation/arm64/booting.rst diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.h b/drivers/gpu/drm/i915/intel_runtime_pm.h index 473c4850c01d..2ee8f9522e05 100644 --- a/drivers/gpu/drm/i915/intel_runtime_pm.h +++ b/drivers/gpu/drm/i915/intel_runtime_pm.h @@ -45,7 +45,7 @@ enum i915_drm_suspend_mode { * to be disabled. This shouldn't happen and we'll print some error messages in * case it happens. * - * For more, read the Documentation/power/runtime_pm.txt. + * For more, read the Documentation/power/runtime_pm.rst. */ struct intel_runtime_pm { atomic_t wakeref_count; diff --git a/drivers/i2c/busses/i2c-nvidia-gpu.c b/drivers/i2c/busses/i2c-nvidia-gpu.c index cfc76b5de726..5a1235fd86bb 100644 --- a/drivers/i2c/busses/i2c-nvidia-gpu.c +++ b/drivers/i2c/busses/i2c-nvidia-gpu.c @@ -364,7 +364,7 @@ static void gpu_i2c_remove(struct pci_dev *pdev) /* * We need gpu_i2c_suspend() even if it is stub, for runtime pm to work * correctly. Without it, lspci shows runtime pm status as "D0" for the card. - * Documentation/power/pci.txt also insists for driver to provide this. + * Documentation/power/pci.rst also insists for driver to provide this. */ static __maybe_unused int gpu_i2c_suspend(struct device *dev) { -- 2.21.0 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 0/9] Some doc fixes
This patch series is against linux-next (next-20190627). I doubt those would apply cleanly against docs next tree. So, please apply it via the subsystem trees. Otherwise, they could be pushed by the end of the merge window or for -rc1 via a docs tree. Most, if not all were I already sent. Mauro Carvalho Chehab (9): hrtimer: Use a bullet for the returns bullet list docs: trace: fix a broken label docs: signal: fix a kernel-doc markup dt: leds-lm36274.txt: fix a broken reference to ti-lmu.txt docs: fix some broken references due to txt->rst renames docs: virtual: there are two orphan docs there docs: gpu: add msm-crash-dump.rst to the index.rst file drm: fix a reference for a renamed file: fb/modedb.rst platform: x86: get rid of a non-existent document Documentation/devicetree/bindings/arm/idle-states.txt | 2 +- Documentation/devicetree/bindings/leds/leds-lm36274.txt | 2 +- Documentation/gpu/drivers.rst | 1 + Documentation/gpu/msm-crash-dump.rst| 2 -- Documentation/trace/kprobetrace.rst | 1 + Documentation/virtual/kvm/amd-memory-encryption.rst | 2 ++ Documentation/virtual/kvm/vcpu-requests.rst | 2 ++ drivers/gpu/drm/drm_modes.c | 2 +- drivers/gpu/drm/i915/intel_runtime_pm.h | 2 +- drivers/i2c/busses/i2c-nvidia-gpu.c | 2 +- drivers/platform/x86/Kconfig| 3 --- kernel/signal.c | 2 +- kernel/time/hrtimer.c | 7 --- 13 files changed, 16 insertions(+), 14 deletions(-) -- 2.21.0 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] XDC 2019: 10 days left to submit your talks!
Hello! Onlyh 10 days to go to submit your talks, workshops or demos for this year's X.Org Developer Conference, which will be taking place in beautiful Montréal, Canada on October 2-4, 2019! Whether it's the Linux kernel, Mesa, DRM, Wayland or X11, if it's related to the Open Source graphics stack, please send it in! Head to the XDC website to learn more: https://xdc2019.x.org/ The deadline for submissions Sunday, 7 July 2019. Best, Mark ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915/guc: Avoid reclaim locks during reset
== Series Details == Series: series starting with [1/2] drm/i915/guc: Avoid reclaim locks during reset URL : https://patchwork.freedesktop.org/series/62973/ State : success == Summary == CI Bug Log - changes from CI_DRM_6385 -> Patchwork_13473 Summary --- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/ Known issues Here are the changes found in Patchwork_13473 that come from known issues: ### IGT changes ### Issues hit * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [PASS][1] -> [FAIL][2] ([fdo#109485]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-7500u/igt@kms_chamel...@hdmi-hpd-fast.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-kbl-7500u/igt@kms_chamel...@hdmi-hpd-fast.html - fi-kbl-7567u: [PASS][3] -> [FAIL][4] ([fdo#109485]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-7567u/igt@kms_chamel...@hdmi-hpd-fast.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-kbl-7567u/igt@kms_chamel...@hdmi-hpd-fast.html Possible fixes * igt@gem_exec_suspend@basic-s4-devices: - fi-blb-e6850: [INCOMPLETE][5] ([fdo#107718]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-blb-e6850/igt@gem_exec_susp...@basic-s4-devices.html * igt@i915_pm_rpm@basic-rte: - fi-kbl-r: [DMESG-WARN][7] ([fdo#111012]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-r/igt@i915_pm_...@basic-rte.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-kbl-r/igt@i915_pm_...@basic-rte.html * igt@i915_pm_rpm@module-reload: - fi-cml-u: [DMESG-WARN][9] ([fdo#111012]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-cml-u/igt@i915_pm_...@module-reload.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-cml-u/igt@i915_pm_...@module-reload.html * igt@i915_selftest@live_blt: - fi-icl-dsi: [INCOMPLETE][11] ([fdo#107713]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-icl-dsi/igt@i915_selftest@live_blt.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-icl-dsi/igt@i915_selftest@live_blt.html Warnings * igt@runner@aborted: - fi-kbl-r: [FAIL][13] ([fdo#103841] / [fdo#110992]) -> [FAIL][14] ([fdo#103841] / [fdo#109383] / [fdo#110992]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6385/fi-kbl-r/igt@run...@aborted.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/fi-kbl-r/igt@run...@aborted.html [fdo#103841]: https://bugs.freedesktop.org/show_bug.cgi?id=103841 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718 [fdo#109383]: https://bugs.freedesktop.org/show_bug.cgi?id=109383 [fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485 [fdo#110992]: https://bugs.freedesktop.org/show_bug.cgi?id=110992 [fdo#111012]: https://bugs.freedesktop.org/show_bug.cgi?id=111012 Participating hosts (51 -> 44) -- Additional (2): fi-bdw-gvtdvm fi-skl-gvtdvm Missing(9): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus Build changes - * Linux: CI_DRM_6385 -> Patchwork_13473 CI_DRM_6385: 25969d0b2ad59fac64891281e70efa0714084345 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5075: 03779dd3de8a57544f124d9952a6d2b3e34e34ca @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_13473: 950a0a60c59cfab2eeb04b1e6b86531fa777390b @ git://anongit.freedesktop.org/gfx-ci/linux == Kernel 32bit build == Warning: Kernel 32bit buildtest failed: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/build_32bit.log CALLscripts/checksyscalls.sh CALLscripts/atomic/check-atomics.sh CHK include/generated/compile.h Kernel: arch/x86/boot/bzImage is ready (#1) Building modules, stage 2. MODPOST 112 modules ERROR: "__udivdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! ERROR: "__divdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined! scripts/Makefile.modpost:91: recipe for target '__modpost' failed make[1]: *** [__modpost] Error 1 Makefile:1287: recipe for target 'modules' failed make: *** [modules] Error 2 == Linux commits == 950a0a60c59c drm/i915: Markup potential lock for i915_active c66fb422a9ca drm/i915/guc: Avoid reclaim locks during reset == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13473/ ___ Intel-gfx
[Intel-gfx] [PATCH 2/2] drm/i915: Markup potential lock for i915_active
Make the lockchains more deterministic via i915_active by flagging the potential lock. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_active.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index cb6a1eadf7df..a55a0a954d74 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -268,6 +268,8 @@ int i915_active_wait(struct i915_active *ref) int err; might_sleep(); + might_lock(>mutex); + if (RB_EMPTY_ROOT(>tree)) return 0; -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 1/2] drm/i915/guc: Avoid reclaim locks during reset
During reset, we must be very selective in which locks we take as most are tainted by being held across a wait or reclaim (kmalloc) which implicitly waits. Inside the guc reset path, we reset the ADS to sane defaults, but must keep it pinned from initialisation to avoid having to pin it during reset. Signed-off-by: Chris Wilson Cc: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/intel_guc.h | 4 drivers/gpu/drm/i915/intel_guc_ads.c | 26 +- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_guc.h b/drivers/gpu/drm/i915/intel_guc.h index d6a75bc3d7f4..d91c96679dbb 100644 --- a/drivers/gpu/drm/i915/intel_guc.h +++ b/drivers/gpu/drm/i915/intel_guc.h @@ -35,6 +35,8 @@ #include "i915_utils.h" #include "i915_vma.h" +struct __guc_ads_blob; + struct guc_preempt_work { struct work_struct work; struct intel_engine_cs *engine; @@ -65,6 +67,8 @@ struct intel_guc { } interrupts; struct i915_vma *ads_vma; + struct __guc_ads_blob *ads_blob; + struct i915_vma *stage_desc_pool; void *stage_desc_pool_vaddr; struct ida stage_ids; diff --git a/drivers/gpu/drm/i915/intel_guc_ads.c b/drivers/gpu/drm/i915/intel_guc_ads.c index ecb69fc94218..69859d1e047f 100644 --- a/drivers/gpu/drm/i915/intel_guc_ads.c +++ b/drivers/gpu/drm/i915/intel_guc_ads.c @@ -83,18 +83,14 @@ struct __guc_ads_blob { u8 reg_state_buffer[GUC_S3_SAVE_SPACE_PAGES * PAGE_SIZE]; } __packed; -static int __guc_ads_init(struct intel_guc *guc) +static void __guc_ads_init(struct intel_guc *guc) { struct drm_i915_private *dev_priv = guc_to_i915(guc); - struct __guc_ads_blob *blob; + struct __guc_ads_blob *blob = guc->ads_blob; const u32 skipped_size = LRC_PPHWSP_SZ * PAGE_SIZE + LR_HW_CONTEXT_SIZE; u32 base; u8 engine_class; - blob = i915_gem_object_pin_map(guc->ads_vma->obj, I915_MAP_WB); - if (IS_ERR(blob)) - return PTR_ERR(blob); - /* GuC scheduling policies */ guc_policies_init(>policies); @@ -144,9 +140,7 @@ static int __guc_ads_init(struct intel_guc *guc) blob->ads.gt_system_info = base + ptr_offset(blob, system_info); blob->ads.clients_info = base + ptr_offset(blob, clients_info); - i915_gem_object_unpin_map(guc->ads_vma->obj); - - return 0; + i915_gem_object_flush_map(guc->ads_vma->obj); } /** @@ -160,6 +154,7 @@ int intel_guc_ads_create(struct intel_guc *guc) { const u32 size = PAGE_ALIGN(sizeof(struct __guc_ads_blob)); struct i915_vma *vma; + void *blob; int ret; GEM_BUG_ON(guc->ads_vma); @@ -168,11 +163,16 @@ int intel_guc_ads_create(struct intel_guc *guc) if (IS_ERR(vma)) return PTR_ERR(vma); + blob = i915_gem_object_pin_map(vma->obj, I915_MAP_WB); + if (IS_ERR(blob)) { + ret = PTR_ERR(blob); + goto err_vma; + } + guc->ads_vma = vma; + guc->ads_blob = blob; - ret = __guc_ads_init(guc); - if (ret) - goto err_vma; + __guc_ads_init(guc); return 0; @@ -183,7 +183,7 @@ int intel_guc_ads_create(struct intel_guc *guc) void intel_guc_ads_destroy(struct intel_guc *guc) { - i915_vma_unpin_and_release(>ads_vma, 0); + i915_vma_unpin_and_release(>ads_vma, I915_VMA_RELEASE_MAP); } /** -- 2.20.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Fix TypeC port mode switching (rev8)
== Series Details == Series: drm/i915: Fix TypeC port mode switching (rev8) URL : https://patchwork.freedesktop.org/series/61590/ State : success == Summary == CI Bug Log - changes from CI_DRM_6381_full -> Patchwork_13470_full Summary --- **SUCCESS** No regressions found. Known issues Here are the changes found in Patchwork_13470_full that come from known issues: ### IGT changes ### Issues hit * igt@gem_ctx_engines@independent: - shard-glk: [PASS][1] -> [FAIL][2] ([fdo#110987]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-glk9/igt@gem_ctx_engi...@independent.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-glk3/igt@gem_ctx_engi...@independent.html * igt@gem_softpin@noreloc-s3: - shard-skl: [PASS][3] -> [INCOMPLETE][4] ([fdo#104108]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-skl2/igt@gem_soft...@noreloc-s3.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-skl9/igt@gem_soft...@noreloc-s3.html * igt@gem_tiled_swapping@non-threaded: - shard-apl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108686]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-apl3/igt@gem_tiled_swapp...@non-threaded.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-apl6/igt@gem_tiled_swapp...@non-threaded.html - shard-hsw: [PASS][7] -> [FAIL][8] ([fdo#108686]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-hsw2/igt@gem_tiled_swapp...@non-threaded.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-hsw1/igt@gem_tiled_swapp...@non-threaded.html * igt@gem_workarounds@suspend-resume-context: - shard-apl: [PASS][9] -> [DMESG-WARN][10] ([fdo#108566]) +5 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-apl8/igt@gem_workarou...@suspend-resume-context.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-apl7/igt@gem_workarou...@suspend-resume-context.html * igt@i915_pm_rpm@fences-dpms: - shard-iclb: [PASS][11] -> [INCOMPLETE][12] ([fdo#107713] / [fdo#108840]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-iclb7/igt@i915_pm_...@fences-dpms.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-iclb2/igt@i915_pm_...@fences-dpms.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-kbl: [PASS][13] -> [DMESG-WARN][14] ([fdo#108566]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-kbl6/igt@kms_cursor_...@pipe-c-cursor-suspend.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-kbl6/igt@kms_cursor_...@pipe-c-cursor-suspend.html * igt@kms_flip@2x-flip-vs-expired-vblank: - shard-glk: [PASS][15] -> [FAIL][16] ([fdo#105363]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-glk2/igt@kms_f...@2x-flip-vs-expired-vblank.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-glk1/igt@kms_f...@2x-flip-vs-expired-vblank.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-skl: [PASS][17] -> [FAIL][18] ([fdo#105363]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-skl6/igt@kms_f...@flip-vs-expired-vblank-interruptible.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-skl6/igt@kms_f...@flip-vs-expired-vblank-interruptible.html * igt@kms_flip@flip-vs-suspend: - shard-skl: [PASS][19] -> [INCOMPLETE][20] ([fdo#109507]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-skl1/igt@kms_f...@flip-vs-suspend.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-skl3/igt@kms_f...@flip-vs-suspend.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite: - shard-hsw: [PASS][21] -> [SKIP][22] ([fdo#109271]) +34 similar issues [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-hsw1/igt@kms_frontbuffer_track...@fbc-2p-primscrn-cur-indfb-draw-pwrite.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-hsw1/igt@kms_frontbuffer_track...@fbc-2p-primscrn-cur-indfb-draw-pwrite.html * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max: - shard-iclb: [PASS][23] -> [INCOMPLETE][24] ([fdo#107713]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6381/shard-iclb5/igt@kms_plane_alpha_bl...@pipe-c-constant-alpha-max.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13470/shard-iclb7/igt@kms_plane_alpha_bl...@pipe-c-constant-alpha-max.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [PASS][25] -> [FAIL][26] ([fdo#108145] / [fdo#110403]) [25]: