This is an RFC for a hacky idea I had to at least move the converation forward.

The branch with this in it is:
https://github.com/airlied/linux/tree/ttm-bounce

it won't apply to any other tree as it's based on all those patches I posted 
and some other refactorings.

The basic idea is if the driver gets a move request from the TTM core that 
requires it to bounce the buffer
through another domain, it returns -EMULTIHOP and puts the domain details into 
the mem_type, the core
code then just does the mem space for the new temp placment, and retries the 
final placement again.

I've tested on nouveau that the code gets executed (a printk prints at least), 
and it all doesn't burn
down, but it's very lightly tested.

It does allow getting rid of a lot of driver code to handle bouncing moves.

I'm sure this could be prettier or done in a very different way more 
effectively, but hey this was
my chance to misuse an errno value.

Dave.


_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to