Subject: Bug#924496: 'realloc(): invalid next size: 0x000055a779ef2170' crash when opening iPod w/ ~12000 tracks

From: Fred Korz <[email-masked]>
Date: Wed, 20 Mar 2019 17:22:28 -0400

I loathe Heisenbugs!  Sorry for the time waste.

I tried the same IPod on my home system which runs vanilla debian testing
and has the same version (3.4.3-2) of rhythmbox.  I could not reproduce the
crash. Neither the rhythm box slowness nor the apparent memory failure
happen.

Thanks for the time and effort chasing this.  If it should recur I will be
able to file a better report, hopefully including symbolized backtrace, now
that I've got the debug symbol repository added to sources.list (home box
needed this) and the particular packages you listed installed on both boxes.

On Tue, Mar 19, 2019 at 5:00 PM Fred Korz <[email-masked]> wrote:

> Hello Bernhard,
>
> Now it (a) loads completely without crash from the same iPod (and no
> changes there), and (b) does so in <50% as long.
>
> Arrgh! I hate Heisenbugs!!!!  It was entirely repeatable last week, 3 for
> 3.
>
> I've not rebooted since before my report, nor has the rhythmbox package
> changed version (3.4.3-2) ,
> but any of the dependencies may have been updated by automation.
>
> I installed the debugging symbol packages, then started under gdb, plugged
> in the iPod and no load-up crash, plays fine.
> I then ejected and ran rhythmbox without gdb, plugged in the iPod, and
> again no load-up crash, plays fine.
>
> Some more answers embedded below.
>
> On Tue, Mar 19, 2019 at 10:27 AM Bernhard Übelacker <[email-masked]>
> wrote:
>
>> Hello Fred Korz,
>> I just tried to get some more information out of backtrace,
>> without having an iPod or being involved on packaging rhythmbox...
>>
>> But am I right this "Debian Release: rodete" is a version
>> of gLinux - Googles internal rebuild of Debian testing?
>> Can this be downloaded somewhere?
>>
>
> The name, "rodete", is "ROlling DEbian TEsting" and apparently a pun in
> spanish as well.
> It is Debian testing but, as I understand it, run through an internal
> "sieve" of tests before rolling out a consistent snapshot to users.
> It's sort of what would happen if one lagged testing by about 1-2 weeks,
> though some packages can be closer to testing's head if urgent.
>
>
>> And are there debug symbols available for installation?
>>
>
> Yes they are.  I've installed these debug symbol packages at work and will
> install at home tonight.
>
>
>> In Debian these packages are available in a separate
>> repository [1] and are named like this:
>>
>>     rhythmbox-dbgsym librhythmbox-core10-dbgsym libglib2.0-0-dbgsym
>> libtdb1-dbgsym
>>
>> If yes, you could try to install them and run rhythmbox
>> like this and provide the output:
>>
>>     gdb -q -ex 'set width 0' -ex 'set pagination off' -ex 'run' -ex 'bt'
>> -ex 'detach' -ex 'quit' --args /usr/bin/rhythmbox
>>
>
> Damn Heisenbug.  Blew out 3 times last week, once with a coworker there to
> see it.  None this time, either with gdb or without.
>
>
>>
>> As this fault seems to be inside the memory allocator, maybe
>> setting "export MALLOC_CHECK_=2" might reveal some more details?
>>
>> Can this fault be reproduced on a plain Debian testing, too?
>>
>
> I'll try tonight/tomorrow (20190319/20190320) on a system at home where
> I've been running Debian testing for 14+ years now,
> usually update nightly, and rarely get burned by something slipping
> through from experimental into testing that wasn't quite ready.
>
> It's likely that I'll have to install rhythmbox + symbol packages. I've
> had no need for rhythmbox there.  That system is where the backup
> copy of my music library lives and I use vlc directly from the files, or
> serve my library via forked-daapd (successor to firefly / mt-daapd).
>
>
>> Kind regards,
>> Bernhard
>>
>
> Thanks for the guidance.  I wIll both (a) get back to you with results -
> reproduction or Heisenbug - and (b) keep the instructions in case
> of some future return of the Heisenbug, hoping to get a better capture.
>
>
>> [1]
>> https://wiki.debian.org/HowToGetABacktrace#Installing_the_debugging_symbols
>> [1]
>> https://stackoverflow.com/questions/6750815/how-to-turn-off-glibc-run-time-protections
>>
>