[vlc-devel] [PATCH 00/20] MR: Finishing vout life cycle work

Thomas Guillem thomas at gllm.fr
Thu May 9 10:04:21 CEST 2019


What is important is that vout_Create() must be locked by a mutex because you don't want to load 2 "vout window" modules at the same time. It's generally these modules than handle singleton/interface pointer, etc...

Then, vout_Request() could be called unlocked. This will load a "vout display" modules. There can be 2 load at the same time. These modules generally only need the "vout window" context that is always created.

In the past, vout_Request() did a load of "vout window" and "vout display" plugins. That is why it needed to be locked by a mutex.

It is thanks to your job separating vout_Create() and vout_Request() that we can simplify mutexes like I did.

On Wed, May 8, 2019, at 11:47, Rémi Denis-Courmont wrote:
> I'm not sure it's okay to propose patches with the same known bug four times in a row, make the reviewer repeat the problem twice as many, and then imply that the reviewer may be misbehaving.
> 
> Le 8 mai 2019 10:04:52 GMT+03:00, Thomas Guillem <thomas at gllm.fr> a écrit :
>> 
>> 
>> On Tue, May 7, 2019, at 20:50, Rémi Denis-Courmont wrote:
>>> Le tiistaina 7. toukokuuta 2019, 19.11.43 EEST Thomas Guillem a écrit :
>>>> I updated the vout-life/6 branch :
>>>> https://code.videolan.org/tguillem/vlc/commits/vout-life/6
>>>> 
>>>> - Big changes in "resource: create first vout from HoldVout*()" and "player:
>>>> create vout when requested"
>>>> 
>>>>  Indeed, you want to create a vout by default, but only when calling
>>>> vlc_player_HoldVout*(). So all internal code that hold vouts won't create
>>>> one by default.
>>>> 
>>>> 
>>>>  - "How is the race fixed ?"
>>>> 
>>>> I don't really know.
>>> If you don't know which of the locking orders you got rid of, then it's pretty 
>>> safe to assume that it's none of them and the two locks cannot be merged.
>> 
>> I'll try to find it by debuging vlc 3.0
>> But I'm not sure it's OK to refuse a patch because there might be a bug somewhere. 
>> 
>> > 
>>> -- 
>>> レミ・デニ-クールモン
>>> http://www.remlab.net/vlc-devel mailing list
>>> To unsubscribe or modify your subscription options:
>>> https://mailman.videolan.org/listinfo/vlc-devel
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
> 
> -- 
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté. 
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190509/1ab4da00/attachment.html>


More information about the vlc-devel mailing list