Hi Daniel, as discussed here are the patches which change the handle around exclusive fence handling. The main problem seems to have been the dma_resv_test_signaled() function which ignored the exclusive fence when shared fences where present. This was already rather inconsistent since dma_fence_wait_timeout() takes the exclusive one into account even if shared ones are present. The second patch then fixes nouveu to also always take the exclusive fence into account. The third then removes the workaround in amdgpu around the VM page table clearing handling. Since I'm not sure if there are no other places which relies on the existing behavior I will hold this one back for a while. Is that what you had in mind as well? Regards, Christian.