All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: fix out-of-bounds page_table access
@ 2016-06-24 16:04 Matthew Auld
  2016-06-24 16:33 ` ✓ Ro.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Matthew Auld @ 2016-06-24 16:04 UTC (permalink / raw)
  To: intel-gfx

The gen6_for_all_pdes macro does the upper-bound evaluation after
accessing the page_table array, hence on the final iteration we end up
hitting an out-of-bounds error:

[ 1023.831657] UBSAN: Undefined behaviour in drivers/gpu/drm/i915/i915_gem_gtt.c:1993:2
[ 1023.831680] index 512 is out of range for type 'i915_page_table *[512]'
[ 1023.831696] CPU: 0 PID: 4833 Comm: rmmod Tainted: G     U          4.7.0-rc4-drm-intel-debug+ #5
[ 1023.831698] Hardware name: ASUS All Series/Z87-K, BIOS 1202 05/13/2014
[ 1023.831700]  0000000000000200 00000000adfe9733 ffff8801a3917988 ffffffff818cc0a4
[ 1023.831705]  0000000041b58ab3 ffffffff8275ca08 ffffffff818cbff2 ffff8801a39179b0
[ 1023.831708]  ffff8801a3917960 0000000000000200 1ffffffff4365b17 0000000000000001
[ 1023.831711] Call Trace:
[ 1023.831717]  [<ffffffff818cc0a4>] dump_stack+0xb2/0x10e
[ 1023.831721]  [<ffffffff818cbff2>] ? _atomic_dec_and_lock+0x152/0x152
[ 1023.831726]  [<ffffffff81952b0b>] ubsan_epilogue+0xd/0x4e
[ 1023.831730]  [<ffffffff8195373d>] __ubsan_handle_out_of_bounds+0x107/0x14d
[ 1023.831733]  [<ffffffff81953636>] ? __ubsan_handle_shift_out_of_bounds+0x24c/0x24c
[ 1023.831737]  [<ffffffff814bfde6>] ? kfree+0x246/0x3f0
[ 1023.831801]  [<ffffffffa183bff8>] gen6_ppgtt_cleanup+0x128/0x130 [i915]

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
 drivers/gpu/drm/i915/i915_gem_gtt.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
index 163b564..9e5228d 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
@@ -409,7 +409,7 @@ struct i915_hw_ppgtt {
 
 #define gen6_for_all_pdes(pt, ppgtt, iter)  \
 	for (iter = 0;		\
-	     pt = ppgtt->pd.page_table[iter], iter < I915_PDES;	\
+	     iter < I915_PDES ? (pt = ppgtt->pd.page_table[iter]), 1 : 0; \
 	     iter++)
 
 static inline uint32_t i915_pte_index(uint64_t address, uint32_t pde_shift)
-- 
2.7.4

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

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

* ✓ Ro.CI.BAT: success for drm/i915: fix out-of-bounds page_table access
  2016-06-24 16:04 [PATCH] drm/i915: fix out-of-bounds page_table access Matthew Auld
@ 2016-06-24 16:33 ` Patchwork
  2016-06-24 16:37 ` [PATCH] " Chris Wilson
  2016-06-25  5:26 ` ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2) Patchwork
  2 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2016-06-24 16:33 UTC (permalink / raw)
  To: Matthew Auld; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: fix out-of-bounds page_table access
URL   : https://patchwork.freedesktop.org/series/9148/
State : success

== Summary ==

Series 9148v1 drm/i915: fix out-of-bounds page_table access
http://patchwork.freedesktop.org/api/1.0/series/9148/revisions/1/mbox

Test drv_module_reload_basic:
                dmesg-warn -> PASS       (ro-byt-n2820)

fi-hsw-i7-4770k  total:228  pass:194  dwarn:0   dfail:0   fail:1   skip:33 
fi-skl-i5-6260u  total:228  pass:202  dwarn:0   dfail:0   fail:1   skip:25 
fi-snb-i7-2600   total:228  pass:174  dwarn:0   dfail:0   fail:1   skip:53 
ro-bdw-i7-5600u  total:227  pass:189  dwarn:0   dfail:1   fail:0   skip:37 
ro-byt-n2820     total:227  pass:177  dwarn:0   dfail:1   fail:4   skip:45 
ro-hsw-i3-4010u  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31 
ro-hsw-i7-4770r  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31 
ro-ilk-i7-620lm  total:227  pass:154  dwarn:0   dfail:1   fail:2   skip:70 
ro-ilk1-i5-650   total:222  pass:154  dwarn:0   dfail:1   fail:2   skip:65 
ro-ivb-i7-3770   total:227  pass:185  dwarn:0   dfail:1   fail:1   skip:40 
ro-ivb2-i7-3770  total:227  pass:189  dwarn:0   dfail:1   fail:1   skip:36 
ro-skl3-i5-6260u total:227  pass:205  dwarn:1   dfail:1   fail:1   skip:19 
ro-snb-i7-2620M  total:227  pass:178  dwarn:0   dfail:1   fail:1   skip:47 
fi-kbl-qkkr failed to connect after reboot
fi-skl-i7-6700k failed to connect after reboot
ro-bdw-i5-5250u failed to connect after reboot
ro-bdw-i7-5557U failed to connect after reboot
ro-bsw-n3050 failed to connect after reboot

Results at /archive/results/CI_IGT_test/RO_Patchwork_1303/

5c244f4 drm-intel-nightly: 2016y-06m-24d-15h-17m-32s UTC integration manifest
7f7cadb drm/i915: fix out-of-bounds page_table access

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

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

* Re: [PATCH] drm/i915: fix out-of-bounds page_table access
  2016-06-24 16:04 [PATCH] drm/i915: fix out-of-bounds page_table access Matthew Auld
  2016-06-24 16:33 ` ✓ Ro.CI.BAT: success for " Patchwork
@ 2016-06-24 16:37 ` Chris Wilson
  2016-06-24 18:28   ` Dave Gordon
  2016-06-25  5:26 ` ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2) Patchwork
  2 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2016-06-24 16:37 UTC (permalink / raw)
  To: Matthew Auld; +Cc: intel-gfx

On Fri, Jun 24, 2016 at 05:04:46PM +0100, Matthew Auld wrote:
> The gen6_for_all_pdes macro does the upper-bound evaluation after
> accessing the page_table array, hence on the final iteration we end up
> hitting an out-of-bounds error:
> 
> [ 1023.831657] UBSAN: Undefined behaviour in drivers/gpu/drm/i915/i915_gem_gtt.c:1993:2
> [ 1023.831680] index 512 is out of range for type 'i915_page_table *[512]'
> [ 1023.831696] CPU: 0 PID: 4833 Comm: rmmod Tainted: G     U          4.7.0-rc4-drm-intel-debug+ #5
> [ 1023.831698] Hardware name: ASUS All Series/Z87-K, BIOS 1202 05/13/2014
> [ 1023.831700]  0000000000000200 00000000adfe9733 ffff8801a3917988 ffffffff818cc0a4
> [ 1023.831705]  0000000041b58ab3 ffffffff8275ca08 ffffffff818cbff2 ffff8801a39179b0
> [ 1023.831708]  ffff8801a3917960 0000000000000200 1ffffffff4365b17 0000000000000001
> [ 1023.831711] Call Trace:
> [ 1023.831717]  [<ffffffff818cc0a4>] dump_stack+0xb2/0x10e
> [ 1023.831721]  [<ffffffff818cbff2>] ? _atomic_dec_and_lock+0x152/0x152
> [ 1023.831726]  [<ffffffff81952b0b>] ubsan_epilogue+0xd/0x4e
> [ 1023.831730]  [<ffffffff8195373d>] __ubsan_handle_out_of_bounds+0x107/0x14d
> [ 1023.831733]  [<ffffffff81953636>] ? __ubsan_handle_shift_out_of_bounds+0x24c/0x24c
> [ 1023.831737]  [<ffffffff814bfde6>] ? kfree+0x246/0x3f0
> [ 1023.831801]  [<ffffffffa183bff8>] gen6_ppgtt_cleanup+0x128/0x130 [i915]
> 
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Signed-off-by: Matthew Auld <matthew.auld@intel.com>

Ok. Tried to find something to complain about and couldn't.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: fix out-of-bounds page_table access
  2016-06-24 16:37 ` [PATCH] " Chris Wilson
@ 2016-06-24 18:28   ` Dave Gordon
  2016-06-24 18:37     ` [PATCH] drm/i915: tweak gen6_for_{each_pde, all_pdes} macros Dave Gordon
  0 siblings, 1 reply; 9+ messages in thread
From: Dave Gordon @ 2016-06-24 18:28 UTC (permalink / raw)
  To: intel-gfx

On 24/06/16 17:37, Chris Wilson wrote:
> On Fri, Jun 24, 2016 at 05:04:46PM +0100, Matthew Auld wrote:
>> The gen6_for_all_pdes macro does the upper-bound evaluation after
>> accessing the page_table array, hence on the final iteration we end up
>> hitting an out-of-bounds error:
>>
>> [ 1023.831657] UBSAN: Undefined behaviour in drivers/gpu/drm/i915/i915_gem_gtt.c:1993:2
>> [ 1023.831680] index 512 is out of range for type 'i915_page_table *[512]'
>> [ 1023.831696] CPU: 0 PID: 4833 Comm: rmmod Tainted: G     U          4.7.0-rc4-drm-intel-debug+ #5
>> [ 1023.831698] Hardware name: ASUS All Series/Z87-K, BIOS 1202 05/13/2014
>> [ 1023.831700]  0000000000000200 00000000adfe9733 ffff8801a3917988 ffffffff818cc0a4
>> [ 1023.831705]  0000000041b58ab3 ffffffff8275ca08 ffffffff818cbff2 ffff8801a39179b0
>> [ 1023.831708]  ffff8801a3917960 0000000000000200 1ffffffff4365b17 0000000000000001
>> [ 1023.831711] Call Trace:
>> [ 1023.831717]  [<ffffffff818cc0a4>] dump_stack+0xb2/0x10e
>> [ 1023.831721]  [<ffffffff818cbff2>] ? _atomic_dec_and_lock+0x152/0x152
>> [ 1023.831726]  [<ffffffff81952b0b>] ubsan_epilogue+0xd/0x4e
>> [ 1023.831730]  [<ffffffff8195373d>] __ubsan_handle_out_of_bounds+0x107/0x14d
>> [ 1023.831733]  [<ffffffff81953636>] ? __ubsan_handle_shift_out_of_bounds+0x24c/0x24c
>> [ 1023.831737]  [<ffffffff814bfde6>] ? kfree+0x246/0x3f0
>> [ 1023.831801]  [<ffffffffa183bff8>] gen6_ppgtt_cleanup+0x128/0x130 [i915]
>>
>> Cc: Chris Wilson <chris@chris-wilson.co.uk>
>> Signed-off-by: Matthew Auld <matthew.auld@intel.com>
>
> Ok. Tried to find something to complain about and couldn't.
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> -Chris

Well ... not enough to reject it, but there's the lack of parentheses 
round macro parameters, and it uses ?: rather than the && style used in 
the Gen8 equivalents. I'll post an alternative based on the Gen8 version ...

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

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

* [PATCH] drm/i915: tweak gen6_for_{each_pde, all_pdes} macros
  2016-06-24 18:28   ` Dave Gordon
@ 2016-06-24 18:37     ` Dave Gordon
  2016-06-25 15:48       ` Matthew Auld
  0 siblings, 1 reply; 9+ messages in thread
From: Dave Gordon @ 2016-06-24 18:37 UTC (permalink / raw)
  To: intel-gfx; +Cc: Matthew Auld

Gen8 versions of these macros were updated a few months ago
(e8ebd8e drm/i915: eliminate 'temp' in gen8_for_each macros)
originally because at least one iterator could generate an
out of bounds access, but also because eliminating the 'temp'
parameter generated smaller and faster code.

Matthew Auld recently noticed the same problem with the gen6
versions and provided a patch
https://lists.freedesktop.org/archives/intel-gfx/2016-June/099334.html
but while we're changing these, we might as well make them as
much like the gen8 versions as possible, including the style
of using "&& (..., true)" rather than ": (..., 1) : 0", and
of course eliminating the redundant 'temp'.

Furthermore, the "all_pdes" version is only used in one place,
so we can improve code efficiency by changing both the macro
parameters and the calling code to reduce extra dereferences.

Signed-off-by: Dave Gordon <david.s.gordon@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_gem_gtt.c | 25 ++++++++++++-----------
 drivers/gpu/drm/i915/i915_gem_gtt.h | 40 ++++++++++++++++++-------------------
 2 files changed, 33 insertions(+), 32 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
index 5890017..8f0dbc4 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -1570,13 +1570,13 @@ static void gen6_dump_ppgtt(struct i915_hw_ppgtt *ppgtt, struct seq_file *m)
 	struct i915_page_table *unused;
 	gen6_pte_t scratch_pte;
 	uint32_t pd_entry;
-	uint32_t  pte, pde, temp;
+	uint32_t  pte, pde;
 	uint32_t start = ppgtt->base.start, length = ppgtt->base.total;
 
 	scratch_pte = vm->pte_encode(px_dma(vm->scratch_page),
 				     I915_CACHE_LLC, true, 0);
 
-	gen6_for_each_pde(unused, &ppgtt->pd, start, length, temp, pde) {
+	gen6_for_each_pde(unused, &ppgtt->pd, start, length, pde) {
 		u32 expected;
 		gen6_pte_t *pt_vaddr;
 		const dma_addr_t pt_addr = px_dma(ppgtt->pd.page_table[pde]);
@@ -1640,9 +1640,9 @@ static void gen6_write_page_range(struct drm_i915_private *dev_priv,
 {
 	struct i915_ggtt *ggtt = &dev_priv->ggtt;
 	struct i915_page_table *pt;
-	uint32_t pde, temp;
+	uint32_t pde;
 
-	gen6_for_each_pde(pt, pd, start, length, temp, pde)
+	gen6_for_each_pde(pt, pd, start, length, pde)
 		gen6_write_pde(pd, pde, pt);
 
 	/* Make sure write is complete before other code can use this page
@@ -1875,7 +1875,7 @@ static int gen6_alloc_va_range(struct i915_address_space *vm,
 	struct i915_hw_ppgtt *ppgtt = i915_vm_to_ppgtt(vm);
 	struct i915_page_table *pt;
 	uint32_t start, length, start_save, length_save;
-	uint32_t pde, temp;
+	uint32_t pde;
 	int ret;
 
 	if (WARN_ON(start_in + length_in > ppgtt->base.total))
@@ -1891,7 +1891,7 @@ static int gen6_alloc_va_range(struct i915_address_space *vm,
 	 * need allocation. The second stage marks use ptes within the page
 	 * tables.
 	 */
-	gen6_for_each_pde(pt, &ppgtt->pd, start, length, temp, pde) {
+	gen6_for_each_pde(pt, &ppgtt->pd, start, length, pde) {
 		if (pt != vm->scratch_pt) {
 			WARN_ON(bitmap_empty(pt->used_ptes, GEN6_PTES));
 			continue;
@@ -1916,7 +1916,7 @@ static int gen6_alloc_va_range(struct i915_address_space *vm,
 	start = start_save;
 	length = length_save;
 
-	gen6_for_each_pde(pt, &ppgtt->pd, start, length, temp, pde) {
+	gen6_for_each_pde(pt, &ppgtt->pd, start, length, pde) {
 		DECLARE_BITMAP(tmp_bitmap, GEN6_PTES);
 
 		bitmap_zero(tmp_bitmap, GEN6_PTES);
@@ -1985,15 +1985,16 @@ static void gen6_free_scratch(struct i915_address_space *vm)
 static void gen6_ppgtt_cleanup(struct i915_address_space *vm)
 {
 	struct i915_hw_ppgtt *ppgtt = i915_vm_to_ppgtt(vm);
+	struct i915_page_directory *pd = &ppgtt->pd;
+	struct drm_device *dev = vm->dev;
 	struct i915_page_table *pt;
 	uint32_t pde;
 
 	drm_mm_remove_node(&ppgtt->node);
 
-	gen6_for_all_pdes(pt, ppgtt, pde) {
+	gen6_for_all_pdes(pt, pd, pde)
 		if (pt != vm->scratch_pt)
-			free_pt(ppgtt->base.dev, pt);
-	}
+			free_pt(dev, pt);
 
 	gen6_free_scratch(vm);
 }
@@ -2059,9 +2060,9 @@ static void gen6_scratch_va_range(struct i915_hw_ppgtt *ppgtt,
 				  uint64_t start, uint64_t length)
 {
 	struct i915_page_table *unused;
-	uint32_t pde, temp;
+	uint32_t pde;
 
-	gen6_for_each_pde(unused, &ppgtt->pd, start, length, temp, pde)
+	gen6_for_each_pde(unused, &ppgtt->pd, start, length, pde)
 		ppgtt->pd.page_table[pde] = ppgtt->base.scratch_pt;
 }
 
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
index 163b564..aa5f31d 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
@@ -390,27 +390,27 @@ struct i915_hw_ppgtt {
 	void (*debug_dump)(struct i915_hw_ppgtt *ppgtt, struct seq_file *m);
 };
 
-/* For each pde iterates over every pde between from start until start + length.
- * If start, and start+length are not perfectly divisible, the macro will round
- * down, and up as needed. The macro modifies pde, start, and length. Dev is
- * only used to differentiate shift values. Temp is temp.  On gen6/7, start = 0,
- * and length = 2G effectively iterates over every PDE in the system.
- *
- * XXX: temp is not actually needed, but it saves doing the ALIGN operation.
+/*
+ * gen6_for_each_pde() iterates over every pde from start until start+length.
+ * If start and start+length are not perfectly divisible, the macro will round
+ * down and up as needed. Start=0 and length=2G effectively iterates over
+ * every PDE in the system. The macro modifies ALL its parameters except 'pd',
+ * so each of the other parameters should preferably be a simple variable, or
+ * at most an lvalue with no side-effects!
  */
-#define gen6_for_each_pde(pt, pd, start, length, temp, iter) \
-	for (iter = gen6_pde_index(start); \
-	     length > 0 && iter < I915_PDES ? \
-			(pt = (pd)->page_table[iter]), 1 : 0; \
-	     iter++, \
-	     temp = ALIGN(start+1, 1 << GEN6_PDE_SHIFT) - start, \
-	     temp = min_t(unsigned, temp, length), \
-	     start += temp, length -= temp)
-
-#define gen6_for_all_pdes(pt, ppgtt, iter)  \
-	for (iter = 0;		\
-	     pt = ppgtt->pd.page_table[iter], iter < I915_PDES;	\
-	     iter++)
+#define gen6_for_each_pde(pt, pd, start, length, iter)			\
+	for (iter = gen6_pde_index(start);				\
+	     length > 0 && iter < I915_PDES &&				\
+		(pt = (pd)->page_table[iter], true);			\
+	     ({ u32 temp = ALIGN(start+1, 1 << GEN6_PDE_SHIFT);		\
+		    temp = min(temp - start, length);			\
+		    start += temp, length -= temp; }), ++iter)
+
+#define gen6_for_all_pdes(pt, pd, iter)					\
+	for (iter = 0;							\
+	     iter < I915_PDES &&					\
+		(pt = (pd)->page_table[iter], true);			\
+	     ++iter)
 
 static inline uint32_t i915_pte_index(uint64_t address, uint32_t pde_shift)
 {
-- 
1.9.1

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

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

* ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2)
  2016-06-24 16:04 [PATCH] drm/i915: fix out-of-bounds page_table access Matthew Auld
  2016-06-24 16:33 ` ✓ Ro.CI.BAT: success for " Patchwork
  2016-06-24 16:37 ` [PATCH] " Chris Wilson
@ 2016-06-25  5:26 ` Patchwork
  2016-06-27 11:59   ` Dave Gordon
  2 siblings, 1 reply; 9+ messages in thread
From: Patchwork @ 2016-06-25  5:26 UTC (permalink / raw)
  To: Dave Gordon; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: fix out-of-bounds page_table access (rev2)
URL   : https://patchwork.freedesktop.org/series/9148/
State : warning

== Summary ==

Series 9148v2 drm/i915: fix out-of-bounds page_table access
http://patchwork.freedesktop.org/api/1.0/series/9148/revisions/2/mbox

Test drv_module_reload_basic:
                dmesg-warn -> PASS       (ro-byt-n2820)
Test kms_pipe_crc_basic:
        Subgroup hang-read-crc-pipe-c:
                pass       -> DMESG-WARN (ro-ivb2-i7-3770)
        Subgroup suspend-read-crc-pipe-c:
                dmesg-warn -> SKIP       (ro-bdw-i5-5250u)

fi-hsw-i7-4770k  total:229  pass:194  dwarn:0   dfail:0   fail:2   skip:33 
fi-kbl-qkkr      total:229  pass:160  dwarn:29  dfail:0   fail:0   skip:40 
fi-skl-i5-6260u  total:229  pass:202  dwarn:0   dfail:0   fail:2   skip:25 
fi-snb-i7-2600   total:229  pass:174  dwarn:0   dfail:0   fail:2   skip:53 
ro-bdw-i5-5250u  total:227  pass:201  dwarn:3   dfail:1   fail:1   skip:21 
ro-bdw-i7-5600u  total:227  pass:189  dwarn:0   dfail:1   fail:0   skip:37 
ro-bsw-n3050     total:227  pass:176  dwarn:0   dfail:1   fail:2   skip:48 
ro-byt-n2820     total:227  pass:177  dwarn:0   dfail:1   fail:4   skip:45 
ro-hsw-i3-4010u  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31 
ro-hsw-i7-4770r  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31 
ro-ilk-i7-620lm  total:227  pass:154  dwarn:0   dfail:1   fail:2   skip:70 
ro-ilk1-i5-650   total:222  pass:154  dwarn:0   dfail:1   fail:2   skip:65 
ro-ivb-i7-3770   total:227  pass:185  dwarn:0   dfail:1   fail:1   skip:40 
ro-ivb2-i7-3770  total:227  pass:188  dwarn:1   dfail:1   fail:1   skip:36 
ro-skl3-i5-6260u total:227  pass:205  dwarn:1   dfail:1   fail:1   skip:19 
ro-snb-i7-2620M  total:227  pass:178  dwarn:0   dfail:1   fail:1   skip:47 
ro-bdw-i7-5557U failed to connect after reboot

Results at /archive/results/CI_IGT_test/RO_Patchwork_1305/

5c244f4 drm-intel-nightly: 2016y-06m-24d-15h-17m-32s UTC integration manifest
6811927 drm/i915: tweak gen6_for_{each_pde, all_pdes} macros

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

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

* Re: [PATCH] drm/i915: tweak gen6_for_{each_pde, all_pdes} macros
  2016-06-24 18:37     ` [PATCH] drm/i915: tweak gen6_for_{each_pde, all_pdes} macros Dave Gordon
@ 2016-06-25 15:48       ` Matthew Auld
  0 siblings, 0 replies; 9+ messages in thread
From: Matthew Auld @ 2016-06-25 15:48 UTC (permalink / raw)
  To: Dave Gordon; +Cc: Intel Graphics Development, Matthew Auld

lgtm

Reviewed-by: Matthew Auld <matthew.auld@intel.com>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2)
  2016-06-25  5:26 ` ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2) Patchwork
@ 2016-06-27 11:59   ` Dave Gordon
  2016-06-27 12:14     ` Tvrtko Ursulin
  0 siblings, 1 reply; 9+ messages in thread
From: Dave Gordon @ 2016-06-27 11:59 UTC (permalink / raw)
  To: intel-gfx, Tvrtko Ursulin

On 25/06/16 06:26, Patchwork wrote:
> == Series Details ==
>
> Series: drm/i915: fix out-of-bounds page_table access (rev2)
> URL   : https://patchwork.freedesktop.org/series/9148/
> State : warning
>
> == Summary ==
>
> Series 9148v2 drm/i915: fix out-of-bounds page_table access
> http://patchwork.freedesktop.org/api/1.0/series/9148/revisions/2/mbox
>
> Test drv_module_reload_basic:
>                  dmesg-warn -> PASS       (ro-byt-n2820)
> Test kms_pipe_crc_basic:
>          Subgroup hang-read-crc-pipe-c:
>                  pass       -> DMESG-WARN (ro-ivb2-i7-3770)

This looks like a variation of
https://bugs.freedesktop.org/show_bug.cgi?id=74102
[ILK/SNB/IVB]igt/testdisplay causes *ERROR* Pipe A FIFO underrun
so unrelated to page table macros.

.Dave.

>          Subgroup suspend-read-crc-pipe-c:
>                  dmesg-warn -> SKIP       (ro-bdw-i5-5250u)
>
> fi-hsw-i7-4770k  total:229  pass:194  dwarn:0   dfail:0   fail:2   skip:33
> fi-kbl-qkkr      total:229  pass:160  dwarn:29  dfail:0   fail:0   skip:40
> fi-skl-i5-6260u  total:229  pass:202  dwarn:0   dfail:0   fail:2   skip:25
> fi-snb-i7-2600   total:229  pass:174  dwarn:0   dfail:0   fail:2   skip:53
> ro-bdw-i5-5250u  total:227  pass:201  dwarn:3   dfail:1   fail:1   skip:21
> ro-bdw-i7-5600u  total:227  pass:189  dwarn:0   dfail:1   fail:0   skip:37
> ro-bsw-n3050     total:227  pass:176  dwarn:0   dfail:1   fail:2   skip:48
> ro-byt-n2820     total:227  pass:177  dwarn:0   dfail:1   fail:4   skip:45
> ro-hsw-i3-4010u  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31
> ro-hsw-i7-4770r  total:227  pass:194  dwarn:0   dfail:1   fail:1   skip:31
> ro-ilk-i7-620lm  total:227  pass:154  dwarn:0   dfail:1   fail:2   skip:70
> ro-ilk1-i5-650   total:222  pass:154  dwarn:0   dfail:1   fail:2   skip:65
> ro-ivb-i7-3770   total:227  pass:185  dwarn:0   dfail:1   fail:1   skip:40
> ro-ivb2-i7-3770  total:227  pass:188  dwarn:1   dfail:1   fail:1   skip:36
> ro-skl3-i5-6260u total:227  pass:205  dwarn:1   dfail:1   fail:1   skip:19
> ro-snb-i7-2620M  total:227  pass:178  dwarn:0   dfail:1   fail:1   skip:47
> ro-bdw-i7-5557U failed to connect after reboot
>
> Results at /archive/results/CI_IGT_test/RO_Patchwork_1305/
>
> 5c244f4 drm-intel-nightly: 2016y-06m-24d-15h-17m-32s UTC integration manifest
> 6811927 drm/i915: tweak gen6_for_{each_pde, all_pdes} macros
>

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

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

* Re: ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2)
  2016-06-27 11:59   ` Dave Gordon
@ 2016-06-27 12:14     ` Tvrtko Ursulin
  0 siblings, 0 replies; 9+ messages in thread
From: Tvrtko Ursulin @ 2016-06-27 12:14 UTC (permalink / raw)
  To: Dave Gordon, intel-gfx


On 27/06/16 12:59, Dave Gordon wrote:
> On 25/06/16 06:26, Patchwork wrote:
>> == Series Details ==
>>
>> Series: drm/i915: fix out-of-bounds page_table access (rev2)
>> URL   : https://patchwork.freedesktop.org/series/9148/
>> State : warning
>>
>> == Summary ==
>>
>> Series 9148v2 drm/i915: fix out-of-bounds page_table access
>> http://patchwork.freedesktop.org/api/1.0/series/9148/revisions/2/mbox
>>
>> Test drv_module_reload_basic:
>>                  dmesg-warn -> PASS       (ro-byt-n2820)
>> Test kms_pipe_crc_basic:
>>          Subgroup hang-read-crc-pipe-c:
>>                  pass       -> DMESG-WARN (ro-ivb2-i7-3770)
>
> This looks like a variation of
> https://bugs.freedesktop.org/show_bug.cgi?id=74102
> [ILK/SNB/IVB]igt/testdisplay causes *ERROR* Pipe A FIFO underrun
> so unrelated to page table macros.
>
> .Dave.
>
>>          Subgroup suspend-read-crc-pipe-c:
>>                  dmesg-warn -> SKIP       (ro-bdw-i5-5250u)
>>
>> fi-hsw-i7-4770k  total:229  pass:194  dwarn:0   dfail:0   fail:2
>> skip:33
>> fi-kbl-qkkr      total:229  pass:160  dwarn:29  dfail:0   fail:0
>> skip:40
>> fi-skl-i5-6260u  total:229  pass:202  dwarn:0   dfail:0   fail:2
>> skip:25
>> fi-snb-i7-2600   total:229  pass:174  dwarn:0   dfail:0   fail:2
>> skip:53
>> ro-bdw-i5-5250u  total:227  pass:201  dwarn:3   dfail:1   fail:1
>> skip:21
>> ro-bdw-i7-5600u  total:227  pass:189  dwarn:0   dfail:1   fail:0
>> skip:37
>> ro-bsw-n3050     total:227  pass:176  dwarn:0   dfail:1   fail:2
>> skip:48
>> ro-byt-n2820     total:227  pass:177  dwarn:0   dfail:1   fail:4
>> skip:45
>> ro-hsw-i3-4010u  total:227  pass:194  dwarn:0   dfail:1   fail:1
>> skip:31
>> ro-hsw-i7-4770r  total:227  pass:194  dwarn:0   dfail:1   fail:1
>> skip:31
>> ro-ilk-i7-620lm  total:227  pass:154  dwarn:0   dfail:1   fail:2
>> skip:70
>> ro-ilk1-i5-650   total:222  pass:154  dwarn:0   dfail:1   fail:2
>> skip:65
>> ro-ivb-i7-3770   total:227  pass:185  dwarn:0   dfail:1   fail:1
>> skip:40
>> ro-ivb2-i7-3770  total:227  pass:188  dwarn:1   dfail:1   fail:1
>> skip:36
>> ro-skl3-i5-6260u total:227  pass:205  dwarn:1   dfail:1   fail:1
>> skip:19
>> ro-snb-i7-2620M  total:227  pass:178  dwarn:0   dfail:1   fail:1
>> skip:47
>> ro-bdw-i7-5557U failed to connect after reboot
>>
>> Results at /archive/results/CI_IGT_test/RO_Patchwork_1305/
>>
>> 5c244f4 drm-intel-nightly: 2016y-06m-24d-15h-17m-32s UTC integration
>> manifest
>> 6811927 drm/i915: tweak gen6_for_{each_pde, all_pdes} macros

Merged to dinq, thanks for the patch and review.

Regards,

Tvrtko

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

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

end of thread, other threads:[~2016-06-27 12:14 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-24 16:04 [PATCH] drm/i915: fix out-of-bounds page_table access Matthew Auld
2016-06-24 16:33 ` ✓ Ro.CI.BAT: success for " Patchwork
2016-06-24 16:37 ` [PATCH] " Chris Wilson
2016-06-24 18:28   ` Dave Gordon
2016-06-24 18:37     ` [PATCH] drm/i915: tweak gen6_for_{each_pde, all_pdes} macros Dave Gordon
2016-06-25 15:48       ` Matthew Auld
2016-06-25  5:26 ` ✗ Ro.CI.BAT: warning for drm/i915: fix out-of-bounds page_table access (rev2) Patchwork
2016-06-27 11:59   ` Dave Gordon
2016-06-27 12:14     ` Tvrtko Ursulin

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.