[FFmpeg-devel] [PATCH 2/4] lavfi/avfilter: simplify filter registration

Michael Niedermayer michael at niedermayer.cc
Wed Nov 29 18:40:12 EET 2017


On Wed, Nov 29, 2017 at 03:51:34AM +0000, Rostislav Pehlivanov wrote:
> On 28 November 2017 at 20:23, Michael Niedermayer <michael at niedermayer.cc>
> wrote:
> 
> > On Mon, Nov 27, 2017 at 04:30:19AM +0000, Rostislav Pehlivanov wrote:
> > > Atomics were entirely pointless and did nothing but slow and complicate
> > > the process down. This could be improved further still but the main
> > > objective of this commit is to simplify.
> > >
> > > Signed-off-by: Rostislav Pehlivanov <atomnuker at gmail.com>
> > > ---
> > >  libavfilter/avfilter.c | 8 +++++---
> > >  1 file changed, 5 insertions(+), 3 deletions(-)
> >
> > *_register() can be called by the user app in a unsyncronized way
> > for example from a module like vlc used AFAIK.
> > or from libs loaded by an application which use libavfilter or other
> > internally.
> >
> > These registration functions should stay thread safe
> >
> >
> > [...]
> >
> > --
> > Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> >
> > Those who would give up essential Liberty, to purchase a little
> > temporary Safety, deserve neither Liberty nor Safety -- Benjamin Franklin
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at ffmpeg.org
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> >
> What variable actually needs to be protected?

The linked list of registered "entities"
That is if the addition is not synchronized by some means, an atomic
exchange a mutex or something then a race can generally occur
and only one addition might succeed or something else might get
entangled

This is in practical terms a very unlikely event to occur of course

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

You can kill me, but you cannot change the truth.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171129/7e2a6635/attachment.sig>


More information about the ffmpeg-devel mailing list