Quoting Chris Wilson (2021-01-15 16:56:42)
Quoting Jinoh Kang (2021-01-15 16:23:31)
If GUP-ineligible pages are passed to a GEM userptr object, -EFAULT is returned only when the object is actually bound.
The xf86-video-intel userspace driver cannot differentiate this condition, and marks the GPU as wedged.
The idea was to call gem_set_domain on the object to validate the pages after creation. I only did that for read-only... I did however make mesa use set-domain for validation.
Hmm, I remember a reason why we wanted to be lazy in populating the pages was that we would often be called to create a map that was never used. So the additional gup + bind was measurable, and we would rather just have a probe. -Chris