I was encountering the same crashes as some other Braswell-Users.
(Black Screen after youtube and pmap_flush_cache in panic message in
/var/log/messages)
For *me* those crashes went away as i added two Fixes which Matt Dillon
used in Dragonfly BSD.
The Patch below was applied to an cvs-checkout from 2017-11-15.
Index: i915_gem_gtt.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/drm/i915/i915_gem_gtt.c,v
retrieving revision 1.15
diff -u -p -r1.15 i915_gem_gtt.c
--- i915_gem_gtt.c 1 Jul 2017 16:14:10 -0000 1.15
+++ i915_gem_gtt.c 16 Nov 2017 15:51:02 -0000
@@ -778,7 +778,10 @@ static void gen8_ppgtt_clear_pte_range(s
num_entries--;
}
- kunmap_px(ppgtt, pt);
+ kunmap_px(ppgtt, pt_vaddr); /* XXX dillon, out of order
+ * patch from linux
+ * 44a71024 12-Apr-2016
+ */
pte = 0;
if (++pde == I915_PDES) {
@@ -1317,6 +1320,8 @@ static int gen8_alloc_va_range_3lvl(stru
gen8_for_each_pde(pt, pd, pd_start, pd_len, temp, pde) {
/* Same reasoning as pd */
WARN_ON(!pt);
+ if (pt == NULL) /* XXX dillon hack */
+ continue; /* XXX dillon hack */
WARN_ON(!pd_len);
WARN_ON(!gen8_pte_count(pd_start, pd_len));