* [PATCH] drm/i915: Check rq->timeline before deference
@ 2018-03-14 10:16 Chris Wilson
2018-03-14 10:43 ` ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2018-03-14 10:16 UTC (permalink / raw)
To: intel-gfx
Not only is the context suspect to disappearing, but so is it's
timeline. Under a lockless inspection of the requests for
debugging from intel_engine_dump(), the context may already have been
freed and we have to check before chasing the dangling pointer.
[28033.681755] Modules linked in: vgem snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal intel_powerclamp coretemp snd_hda_intel crct10dif_pclmul crc32_pclmul snd_hda_codec snd_hwdep snd_hda_core ghash_clmulni_intel snd_pcm mei_me mei i915 r8169 mii prime_numbers i2c_hid
[28033.681796] CPU: 3 PID: 3058 Comm: gem_exec_schedu Tainted: G U 4.16.0-rc5+ #9
[28033.681804] Hardware name: Acer Aspire E5-575G/Ironman_SK , BIOS V1.12 08/02/2016
[28033.681834] RIP: 0010:print_request+0x2b/0xb0 [i915]
[28033.681840] RSP: 0018:ffffc90004afbc18 EFLAGS: 00010202
[28033.681847] RAX: 6b6b6b6b6b6b6b6b RBX: ffff8801921b5a40 RCX: 0000000000000006
[28033.681854] RDX: ffffc90004afbc60 RSI: ffff8801921b5a40 RDI: 0000000000000004
[28033.681861] RBP: ffffc90004afbd80 R08: 0000000000000000 R09: 0000000000000001
[28033.681868] R10: ffffc90004afbbd0 R11: ffffc90004afbc73 R12: ffffc90004afbc60
[28033.681875] R13: ffffc90004afbd80 R14: ffff8801d40ec670 R15: ffff8801921b5a40
[28033.681883] FS: 00007fbba5f6c8c0(0000) GS:ffff8801e8400000(0000) knlGS:0000000000000000
[28033.681891] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[28033.681897] CR2: 00007fbba5f8f000 CR3: 00000001b2efa002 CR4: 00000000003606e0
[28033.681904] Call Trace:
[28033.681932] intel_engine_print_registers+0x6a7/0x930 [i915]
[28033.681962] intel_engine_dump+0x30d/0x740 [i915]
[28033.681971] ? seq_printf+0x3a/0x50
[28033.681995] i915_engine_info+0xb8/0xe0 [i915]
[28033.682003] ? drm_get_color_range_name+0x20/0x20
[28033.682010] seq_read+0xe1/0x440
[28033.682018] full_proxy_read+0x51/0x80
[28033.682025] __vfs_read+0x21/0x130
[28033.682031] ? do_sys_open+0x134/0x220
[28033.682037] ? kmem_cache_free+0x177/0x2b0
[28033.682043] vfs_read+0xa1/0x150
[28033.682049] SyS_read+0x40/0xa0
[28033.682055] do_syscall_64+0x6b/0x1b0
[28033.682063] entry_SYSCALL_64_after_hwframe+0x42/0xb7
[28033.682069] RIP: 0033:0x7fbba4655d11
[28033.682074] RSP: 002b:00007ffd8c49da58 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
[28033.682082] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fbba4655d11
[28033.682089] RDX: 000000000000003f RSI: 00005647bfbfc260 RDI: 0000000000000006
[28033.682096] RBP: 000000000000003f R08: 00000000ffffffff R09: 0000000000000000
[28033.682104] R10: 0000000000000000 R11: 0000000000000246 R12: 00005647bfbfc260
[28033.682111] R13: 0000000000000006 R14: 0000000000000000 R15: 00005647bfbfc260
[28033.682119] Code: 41 55 41 54 49 89 d4 55 53 48 89 fd 48 8b 86 c8 00 00 00 48 8b 3d d6 1e 14 e2 48 89 f3 48 2b be a8 02 00 00 48 8b 80 b0 00 00 00 <4c> 8b 68 18 e8 bc 80 02 e1 8b 8b 70 02 00 00 8b b3 28 02 00 00
[28033.682206] RIP: print_request+0x2b/0xb0 [i915] RSP: ffffc90004afbc18
Reported-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
drivers/gpu/drm/i915/intel_engine_cs.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index a2b1e9e2c008..f22c5f72df8d 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1716,13 +1716,15 @@ static void print_request(struct drm_printer *m,
struct i915_request *rq,
const char *prefix)
{
+ const char *name = rq->fence.ops->get_timeline_name(&rq->fence);
+
drm_printf(m, "%s%x%s [%llx:%x] prio=%d @ %dms: %s\n", prefix,
rq->global_seqno,
i915_request_completed(rq) ? "!" : "",
rq->fence.context, rq->fence.seqno,
rq->priotree.priority,
jiffies_to_msecs(jiffies - rq->emitted_jiffies),
- rq->timeline->common->name);
+ name);
}
static void hexdump(struct drm_printer *m, const void *buf, size_t len)
--
2.16.2
_______________________________________________
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: Check rq->timeline before deference
2018-03-14 10:16 [PATCH] drm/i915: Check rq->timeline before deference Chris Wilson
@ 2018-03-14 10:43 ` Patchwork
2018-03-14 12:59 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-03-14 14:16 ` [PATCH] " Mika Kuoppala
2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-03-14 10:43 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Check rq->timeline before deference
URL : https://patchwork.freedesktop.org/series/39949/
State : success
== Summary ==
Series 39949v1 drm/i915: Check rq->timeline before deference
https://patchwork.freedesktop.org/api/1.0/series/39949/revisions/1/mbox/
---- Known issues:
Test debugfs_test:
Subgroup read_all_entries:
incomplete -> PASS (fi-snb-2520m) fdo#103713
Test prime_vgem:
Subgroup basic-fence-flip:
pass -> FAIL (fi-ilk-650) fdo#104008
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008
fi-bdw-5557u total:288 pass:267 dwarn:0 dfail:0 fail:0 skip:21 time:428s
fi-bdw-gvtdvm total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:434s
fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:380s
fi-bsw-n3050 total:288 pass:242 dwarn:0 dfail:0 fail:0 skip:46 time:526s
fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:298s
fi-bxt-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:507s
fi-bxt-j4205 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:510s
fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:508s
fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:494s
fi-cfl-8700k total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:408s
fi-cfl-s2 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:581s
fi-cfl-u total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:510s
fi-cnl-y3 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:590s
fi-elk-e7500 total:288 pass:229 dwarn:0 dfail:0 fail:0 skip:59 time:427s
fi-glk-1 total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:532s
fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:402s
fi-ilk-650 total:288 pass:227 dwarn:0 dfail:0 fail:1 skip:60 time:419s
fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:460s
fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:428s
fi-kbl-7500u total:288 pass:263 dwarn:1 dfail:0 fail:0 skip:24 time:472s
fi-kbl-7567u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:466s
fi-kbl-r total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:516s
fi-skl-6260u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:444s
fi-skl-6600u total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:528s
fi-skl-6700hq total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:540s
fi-skl-6700k2 total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:502s
fi-skl-6770hq total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:496s
fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:423s
fi-skl-gvtdvm total:288 pass:265 dwarn:0 dfail:0 fail:0 skip:23 time:437s
fi-snb-2520m total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:527s
Blacklisted hosts:
fi-cnl-drrs total:288 pass:257 dwarn:3 dfail:0 fail:0 skip:28 time:526s
307515cd9c5a0464cca2a5257fddacf6dbb0fed6 drm-tip: 2018y-03m-14d-08h-47m-52s UTC integration manifest
6291fdc46ecc drm/i915: Check rq->timeline before deference
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8341/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: warning for drm/i915: Check rq->timeline before deference
2018-03-14 10:16 [PATCH] drm/i915: Check rq->timeline before deference Chris Wilson
2018-03-14 10:43 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-03-14 12:59 ` Patchwork
2018-03-14 14:16 ` [PATCH] " Mika Kuoppala
2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-03-14 12:59 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Check rq->timeline before deference
URL : https://patchwork.freedesktop.org/series/39949/
State : warning
== Summary ==
---- Possible new issues:
Test gem_pwrite:
Subgroup big-cpu-backwards:
pass -> SKIP (shard-apl)
---- Known issues:
Test kms_cursor_crc:
Subgroup cursor-64x64-suspend:
pass -> SKIP (shard-hsw) fdo#103540
fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
shard-apl total:3360 pass:1777 dwarn:1 dfail:0 fail:6 skip:1574 time:12759s
shard-hsw total:3444 pass:1769 dwarn:1 dfail:0 fail:1 skip:1672 time:11690s
shard-snb total:3444 pass:1360 dwarn:1 dfail:0 fail:2 skip:2081 time:7201s
Blacklisted hosts:
shard-kbl total:3276 pass:1849 dwarn:1 dfail:0 fail:9 skip:1414 time:9128s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8341/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: Check rq->timeline before deference
2018-03-14 10:16 [PATCH] drm/i915: Check rq->timeline before deference Chris Wilson
2018-03-14 10:43 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-03-14 12:59 ` ✗ Fi.CI.IGT: warning " Patchwork
@ 2018-03-14 14:16 ` Mika Kuoppala
2018-03-14 14:33 ` Chris Wilson
2 siblings, 1 reply; 5+ messages in thread
From: Mika Kuoppala @ 2018-03-14 14:16 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> Not only is the context suspect to disappearing, but so is it's
> timeline. Under a lockless inspection of the requests for
> debugging from intel_engine_dump(), the context may already have been
> freed and we have to check before chasing the dangling pointer.
>
> [28033.681755] Modules linked in: vgem snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal intel_powerclamp coretemp snd_hda_intel crct10dif_pclmul crc32_pclmul snd_hda_codec snd_hwdep snd_hda_core ghash_clmulni_intel snd_pcm mei_me mei i915 r8169 mii prime_numbers i2c_hid
> [28033.681796] CPU: 3 PID: 3058 Comm: gem_exec_schedu Tainted: G U 4.16.0-rc5+ #9
> [28033.681804] Hardware name: Acer Aspire E5-575G/Ironman_SK , BIOS V1.12 08/02/2016
> [28033.681834] RIP: 0010:print_request+0x2b/0xb0 [i915]
> [28033.681840] RSP: 0018:ffffc90004afbc18 EFLAGS: 00010202
> [28033.681847] RAX: 6b6b6b6b6b6b6b6b RBX: ffff8801921b5a40 RCX: 0000000000000006
> [28033.681854] RDX: ffffc90004afbc60 RSI: ffff8801921b5a40 RDI: 0000000000000004
> [28033.681861] RBP: ffffc90004afbd80 R08: 0000000000000000 R09: 0000000000000001
> [28033.681868] R10: ffffc90004afbbd0 R11: ffffc90004afbc73 R12: ffffc90004afbc60
> [28033.681875] R13: ffffc90004afbd80 R14: ffff8801d40ec670 R15: ffff8801921b5a40
> [28033.681883] FS: 00007fbba5f6c8c0(0000) GS:ffff8801e8400000(0000) knlGS:0000000000000000
> [28033.681891] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [28033.681897] CR2: 00007fbba5f8f000 CR3: 00000001b2efa002 CR4: 00000000003606e0
> [28033.681904] Call Trace:
> [28033.681932] intel_engine_print_registers+0x6a7/0x930 [i915]
> [28033.681962] intel_engine_dump+0x30d/0x740 [i915]
> [28033.681971] ? seq_printf+0x3a/0x50
> [28033.681995] i915_engine_info+0xb8/0xe0 [i915]
> [28033.682003] ? drm_get_color_range_name+0x20/0x20
> [28033.682010] seq_read+0xe1/0x440
> [28033.682018] full_proxy_read+0x51/0x80
> [28033.682025] __vfs_read+0x21/0x130
> [28033.682031] ? do_sys_open+0x134/0x220
> [28033.682037] ? kmem_cache_free+0x177/0x2b0
> [28033.682043] vfs_read+0xa1/0x150
> [28033.682049] SyS_read+0x40/0xa0
> [28033.682055] do_syscall_64+0x6b/0x1b0
> [28033.682063] entry_SYSCALL_64_after_hwframe+0x42/0xb7
> [28033.682069] RIP: 0033:0x7fbba4655d11
> [28033.682074] RSP: 002b:00007ffd8c49da58 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
> [28033.682082] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fbba4655d11
> [28033.682089] RDX: 000000000000003f RSI: 00005647bfbfc260 RDI: 0000000000000006
> [28033.682096] RBP: 000000000000003f R08: 00000000ffffffff R09: 0000000000000000
> [28033.682104] R10: 0000000000000000 R11: 0000000000000246 R12: 00005647bfbfc260
> [28033.682111] R13: 0000000000000006 R14: 0000000000000000 R15: 00005647bfbfc260
> [28033.682119] Code: 41 55 41 54 49 89 d4 55 53 48 89 fd 48 8b 86 c8 00 00 00 48 8b 3d d6 1e 14 e2 48 89 f3 48 2b be a8 02 00 00 48 8b 80 b0 00 00 00 <4c> 8b 68 18 e8 bc 80 02 e1 8b 8b 70 02 00 00 8b b3 28 02 00 00
> [28033.682206] RIP: print_request+0x2b/0xb0 [i915] RSP: ffffc90004afbc18
>
> Reported-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_engine_cs.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> index a2b1e9e2c008..f22c5f72df8d 100644
> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> @@ -1716,13 +1716,15 @@ static void print_request(struct drm_printer *m,
> struct i915_request *rq,
> const char *prefix)
> {
> + const char *name = rq->fence.ops->get_timeline_name(&rq->fence);
> +
So we get "signaled"
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> drm_printf(m, "%s%x%s [%llx:%x] prio=%d @ %dms: %s\n", prefix,
> rq->global_seqno,
> i915_request_completed(rq) ? "!" : "",
> rq->fence.context, rq->fence.seqno,
> rq->priotree.priority,
> jiffies_to_msecs(jiffies - rq->emitted_jiffies),
> - rq->timeline->common->name);
> + name);
> }
>
> static void hexdump(struct drm_printer *m, const void *buf, size_t len)
> --
> 2.16.2
_______________________________________________
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: Check rq->timeline before deference
2018-03-14 14:16 ` [PATCH] " Mika Kuoppala
@ 2018-03-14 14:33 ` Chris Wilson
0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2018-03-14 14:33 UTC (permalink / raw)
To: Mika Kuoppala, intel-gfx
Quoting Mika Kuoppala (2018-03-14 14:16:08)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
>
> > Not only is the context suspect to disappearing, but so is it's
> > timeline. Under a lockless inspection of the requests for
> > debugging from intel_engine_dump(), the context may already have been
> > freed and we have to check before chasing the dangling pointer.
> >
> > [28033.681755] Modules linked in: vgem snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal intel_powerclamp coretemp snd_hda_intel crct10dif_pclmul crc32_pclmul snd_hda_codec snd_hwdep snd_hda_core ghash_clmulni_intel snd_pcm mei_me mei i915 r8169 mii prime_numbers i2c_hid
> > [28033.681796] CPU: 3 PID: 3058 Comm: gem_exec_schedu Tainted: G U 4.16.0-rc5+ #9
> > [28033.681804] Hardware name: Acer Aspire E5-575G/Ironman_SK , BIOS V1.12 08/02/2016
> > [28033.681834] RIP: 0010:print_request+0x2b/0xb0 [i915]
> > [28033.681840] RSP: 0018:ffffc90004afbc18 EFLAGS: 00010202
> > [28033.681847] RAX: 6b6b6b6b6b6b6b6b RBX: ffff8801921b5a40 RCX: 0000000000000006
> > [28033.681854] RDX: ffffc90004afbc60 RSI: ffff8801921b5a40 RDI: 0000000000000004
> > [28033.681861] RBP: ffffc90004afbd80 R08: 0000000000000000 R09: 0000000000000001
> > [28033.681868] R10: ffffc90004afbbd0 R11: ffffc90004afbc73 R12: ffffc90004afbc60
> > [28033.681875] R13: ffffc90004afbd80 R14: ffff8801d40ec670 R15: ffff8801921b5a40
> > [28033.681883] FS: 00007fbba5f6c8c0(0000) GS:ffff8801e8400000(0000) knlGS:0000000000000000
> > [28033.681891] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> > [28033.681897] CR2: 00007fbba5f8f000 CR3: 00000001b2efa002 CR4: 00000000003606e0
> > [28033.681904] Call Trace:
> > [28033.681932] intel_engine_print_registers+0x6a7/0x930 [i915]
> > [28033.681962] intel_engine_dump+0x30d/0x740 [i915]
> > [28033.681971] ? seq_printf+0x3a/0x50
> > [28033.681995] i915_engine_info+0xb8/0xe0 [i915]
> > [28033.682003] ? drm_get_color_range_name+0x20/0x20
> > [28033.682010] seq_read+0xe1/0x440
> > [28033.682018] full_proxy_read+0x51/0x80
> > [28033.682025] __vfs_read+0x21/0x130
> > [28033.682031] ? do_sys_open+0x134/0x220
> > [28033.682037] ? kmem_cache_free+0x177/0x2b0
> > [28033.682043] vfs_read+0xa1/0x150
> > [28033.682049] SyS_read+0x40/0xa0
> > [28033.682055] do_syscall_64+0x6b/0x1b0
> > [28033.682063] entry_SYSCALL_64_after_hwframe+0x42/0xb7
> > [28033.682069] RIP: 0033:0x7fbba4655d11
> > [28033.682074] RSP: 002b:00007ffd8c49da58 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
> > [28033.682082] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fbba4655d11
> > [28033.682089] RDX: 000000000000003f RSI: 00005647bfbfc260 RDI: 0000000000000006
> > [28033.682096] RBP: 000000000000003f R08: 00000000ffffffff R09: 0000000000000000
> > [28033.682104] R10: 0000000000000000 R11: 0000000000000246 R12: 00005647bfbfc260
> > [28033.682111] R13: 0000000000000006 R14: 0000000000000000 R15: 00005647bfbfc260
> > [28033.682119] Code: 41 55 41 54 49 89 d4 55 53 48 89 fd 48 8b 86 c8 00 00 00 48 8b 3d d6 1e 14 e2 48 89 f3 48 2b be a8 02 00 00 48 8b 80 b0 00 00 00 <4c> 8b 68 18 e8 bc 80 02 e1 8b 8b 70 02 00 00 8b b3 28 02 00 00
> > [28033.682206] RIP: print_request+0x2b/0xb0 [i915] RSP: ffffc90004afbc18
> >
> > Reported-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_engine_cs.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> > index a2b1e9e2c008..f22c5f72df8d 100644
> > --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> > +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> > @@ -1716,13 +1716,15 @@ static void print_request(struct drm_printer *m,
> > struct i915_request *rq,
> > const char *prefix)
> > {
> > + const char *name = rq->fence.ops->get_timeline_name(&rq->fence);
> > +
>
> So we get "signaled"
And as we hold the rcu lock here, context can't also vanish between the
test inside get_timeline_name() and our use in the printf.
(Probably could do with another sentence to in get_timeline_name() to
illustrate the rcu_read_lock() requirement in the caller.)
> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Thanks, hopefully you will be able to run gem_ctx_switch all night now!
-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-03-14 14:33 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-14 10:16 [PATCH] drm/i915: Check rq->timeline before deference Chris Wilson
2018-03-14 10:43 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-03-14 12:59 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-03-14 14:16 ` [PATCH] " Mika Kuoppala
2018-03-14 14:33 ` 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.