On 09/24/2013 01:32 PM, Maarten Lankhorst wrote:
Op 24-09-13 12:33, Thomas Hellstrom schreef:
On 09/24/2013 12:11 PM, Maarten Lankhorst wrote:
It seems userspace only updates offset and domain in nouveau. If it fails to update it would result in the same affect as when the buffer gets moved around by TTM. But hey maybe I'll have some fun, I'll lie to userspace, hardcode userspace offset to 0x40000000, always force domain to be different and see what breaks.
My guess is absolutely nothing, except it might expose some bugs where we forgot annotation..
I think that would certainly break if your return an -ERESTARTSYS after applying relocations but before submitting the command stream to hardware....
The relocations are updated before submitting the command stream, but it's copied back to userspace after submitting the command stream. I'm not sure what -ERESTARTSYS would change, the syscall is not in an interruptible state.
Hmm, I was assuming without looking at the code that there was an interruptible wait for pipe/ring space after relocation application.
/Thomas