Re: [ecasound] Bug report: segfault, etd, time sensitive operations

From: Kai Vehmanen <kvehmanen@email-addr-hidden>
Date: Sun Jun 03 2012 - 01:59:50 EEST


On Sun, 27 May 2012, S. Massy wrote:

> I'm sorry to say the bug still seems to be lurking. :( Find the trace
> below and the last 250 lines of the most recent log attached.

refactoring attempt 3...thousand, pushed to git master. Tarball at:

I now did what I should have done years ago. The "convenience" feature to
allow cop-add/ctrl-add on connected chainsetups, by stopping the engine
briefly for the edits (and trying to hide this), was a horrible mistake in
retrospect, and keeping it around with increasing layers of hacks, was
just really bad sw engineering from my part -- I should have known better.

With today's patch, "cop-add" and "ctrl-add" can actually be routed via
engine, so that the engine actually does the modifications in its own
context, as atomic operations with regards to engine's own state. While
still not fully real-time safe (you can have gaps in real-time output when
you add a chainop still), but a lot faster than earlier, less code overall
than before, easier to read code and in theory race-free. So just like
"cop-set", "c-bypass" et al have always been.

This does have one big compromise: cop-remove and ctrl-remove no longer
work on connected chainsetups (you can use them, but a disconnect plus
reconnect will happen, e.g. JACK client will deactivate and reactivate, so
a fairly big break). In theory they can be supported in the future as
well, but I just run out of time today,

Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
Ecasound-list mailing list
Received on Sun Jun 3 04:15:04 2012

This archive was generated by hypermail 2.1.8 : Sun Jun 03 2012 - 04:15:06 EEST