Draft: Add DRI3/Present protocol for explicit synchronization
Hi, just send out this rough change to illustrate a way to explicit sync. Implementing it require a bunch of work, so I need communities' feedback at the begging to make sure it's the right way.
The key idea is using timeline syncobj as the wait and idle fence of present protocol. The reason to use timeline syncobj instead of sync_file is:
- it's GPU driver friendly, as most GPU use syncobj for command submission
- light weight, send FD once then use raw number afterwards
- may be required by some GPU which support user space command stream synchronization
Some guys (like @jekstrand) also mentioned similar way before, so I'm just the one who plan to implement it for X11 world.
Any feedback is welcome, thanks.