synchronous buffers are read instantly and we can release them, but asynchronous ones have to be locked until they are unref'd from .current to avoid reading from a buffer after .release()
* wayland/core/dmabuf: move to new impl it's the final countdown