[FFmpeg-devel] [Jack-Devel] [PATCH] libavdevice: JACK demuxer

Måns Rullgård mans
Mon Mar 16 09:38:58 CET 2009


Olivier Guilyardi <list at samalyse.com> writes:

> M?ns Rullg?rd wrote:
>> Olivier Guilyardi <list at samalyse.com> writes:
>> 
>>> M?ns Rullg?rd wrote:
>>>
>>>> Writing SMP-safe code using shared buffers without any form of memory
>>>> barriers is next to impossible.  This is because the exact time and
>>>> order in which writes happen is generally unpredictable.  If you claim
>>>> to have solved this problem you'll have to show something better than
>>>> hand-waving as proof.
>>> M?ns, in regard to proofs, if you can write a test that uses the
>>> jack ringbuffer, fails without memory barriers, and succeeds with
>>> them, on the platform on your choice (x86, PowerPC, ARM, etc...), I
>>> promise I'll buy you a beer.
>>>
>>> I suspect no one on earth can do that.
>> 
>> That nobody has seen it fail does not mean it will never happen.
>
> Does this mean that you believe in something that nobody has ever seen?

I believe in the *possibility* of something existing even if it has
never been seen, such as the Higgs particle.

> What about the gods you mentioned in your reply to Paul then? Should
> I believe in them because some say I should?
>
> There are many religions that could use your argument.
>
>> Please look up the word proof in your dictionary.
>
> From WordNet:
>
> proof:
> n 1: any factual evidence that helps to establish the truth of
>      something; "if you have any proof for what you say, now
>     is the time to produce it"
> [...]
>
> M?ns, can you provide a fact, not a theory or an argument, that
> "helps to establish the truth" of your very own sentence: "Writing
> SMP-safe code using shared buffers without any form of memory
> barriers is next to impossible."  ?

You've got it backwards.  It is *you* who need to prove that your ring
buffer works correctly under all circumstances.  Stop trying to twist
the argument around.

> In the field of programming, facts are the results of running a
> program.

Running a program may provide some facts, sure.  Facts, and better
ones, are obtained by analysing the code.  From your argumentation, it
appears that nobody has actually analysed the code carefully.

> So please write that program that fails or succeeds because of
> memory barriers, using the jack ringbuffer.

Again, wrong approach.  Testing can only ever prove that bugs exist,
never that they do not.

-- 
M?ns Rullg?rd
mans at mansr.com




More information about the ffmpeg-devel mailing list