Hmm, that log makes the failure path look even simpler: a single BLT copy in the batch to write into the userptr. It would be the same code path on every generation (certainly if Option "AccelMethod" "BLT" is used).
Something you can do for a quick check:
ickle@nuc-i3427:/usr/src/xf86-video-intel$ git diff diff --git a/src/sna/kgem.c b/src/sna/kgem.c index 66adae8..b1cf92a 100644 --- a/src/sna/kgem.c +++ b/src/sna/kgem.c @@ -2581,7 +2581,7 @@ bool __kgem_ring_is_idle(struct kgem *kgem, int ring) return true; }
-#if 0 +#if 1 static void kgem_commit__check_reloc(struct kgem *kgem) { struct kgem_request *rq = kgem->next_request;
which enables the sanity check on the kernel relocation values.
Hmm, that log makes the failure path look even simpler: a single BLT copy in the batch to write into the userptr. It would be the same code path on every generation (certainly if Option "AccelMethod" "BLT" is used).
Something you can do for a quick check:
ickle@nuc- i3427:/ usr/src/ xf86-video- intel$ git diff ring_is_ idle(struct kgem *kgem, int ring)
diff --git a/src/sna/kgem.c b/src/sna/kgem.c
index 66adae8..b1cf92a 100644
--- a/src/sna/kgem.c
+++ b/src/sna/kgem.c
@@ -2581,7 +2581,7 @@ bool __kgem_
return true;
}
-#if 0 _check_ reloc(struct kgem *kgem)
+#if 1
static void kgem_commit_
{
struct kgem_request *rq = kgem->next_request;
which enables the sanity check on the kernel relocation values.