Hi,

On Fri, 27 Dec 2019 15:31:13 +0100 Jaap Joris Vens <j...@rtts.eu> wrote:
> On Fri, Dec 27, 2019 at 01:29:13PM +0100, Stefan Bühler wrote:
> >Hi,
> >
> >yes, you are right, my patch only fixes the task manager crash.
> >
> >I now took a look at all backtraces, and all apart the first one
> >(probably older version?) seem to be the same "other" instance:
> >
> --- 8< ---
> 
> I am not quite following the intricacies of this crash anymore, but might
> this be something that we will need to report upstream?

Yes, that is how it looks to me (although I didn't take a look at the
debian patches and whether they have any impact on this). I don't quite
understand under which circumstances the MemoryInstrumentation
"singleton" instance is supposed to exist; but more importantly I
couldn't see any relation between the conditions when it gets created
and when it gets used.

Which imho means all uses need to check whether the instance actually
exists, or creating it automatically whenever it is requested.

Apart from that the singleton pointer is managed in a very dangerous
manner; the destructor will reset the singleton pointer, which makes it
look like that is supposed to do something meaningful, but in a
multi-threaded environment this simply can't go well imho; this probably
should use shared ownership and locking, or `call_once` and never
destroying it ever (and maybe calling abort in the destructor...).

cheers,
Stefan

Reply via email to