On 10/07/2015 06:00 AM, David Woodhouse wrote: > On Fri, 2015-09-04 at 09:59 -0700, Jesse Barnes wrote: >> + >> + ret = handle_mm_fault(mm, vma, address, >> + desc.wr_req ? FAULT_FLAG_WRITE : 0); >> + if (ret & VM_FAULT_ERROR) { >> + gpu_mm_segv(tsk, address, SEGV_ACCERR); /* ? */ >> + goto out_unlock; >> + } >> + > > Hm, do you need to force the SEGV there, in what ought to be generic > IOMMU code? > > Can you instead just let the fault handler return an appropriate > failure code to the IOMMU request queue and then deal with the > resulting error on the i915 device side? I'm not sure if we get enough info on the i915 side to handle it reasonably, we'll have to test that out. > That way, you should hopefully get to gracefully cope with reporting > errors for a specific *context*, rather than killing the whole process. It would be best to get per-context error info, but killing the process may be unavoidable (just as if a single thread clobbers memory in your process). Jesse _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx