>> +    /* For framebuffer backed by dmabuf, wait for fence */
>> +    mutex_lock(&dev->object_name_lock);

>The lock here is unfortunate. I thought once a dmabuf as attached to an 
>object, it persists until the object is destroyed, so afaict the lock here is 
>unnecessary (as it only protects against a userspace race in attaching a 
>dmabuf).

You're probably right. I'll send out a v3 patch set with the lock removed if 
there are no other comments.

>> +    if (pending_flip_obj->base.dma_buf) {
>> +            reservation_object_wait_timeout_rcu(

>Side-question, are these fences exclusive or do we track read/write?

They are exclusive, with the sink X driver using vblank events to explicitly 
request the source X driver to write. If you guys want to track read/write I 
could switch over to shared fences, but for my use case only exclusive fences 
are necessary.

Thanks,
Alex

Reply via email to