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