29.06.2020 13:27, Mikko Perttunen пишет: ...
- Sync points should be properly refcounted. Job's sync points
shouldn't be re-used while job is alive.
- The job's sync point can't be re-used after job's submission (UAPI
constraint!). Userspace must free sync point and allocate a new one for the next job submission. And now we:
- Know that job's sync point is always in a healthy state!
- We're not limited by a number of physically available hardware sync points! Allocation should block until free sync point is available.
It also occurred to me that if allocation is blocking and if there is a need to allocate multiple sync points for a job, then the IOCTL should be able to allocate multiple sync points at once. This will prevent interlock situation where two context could block on each other.