On Thu, Feb 26, 2015, at 12:53 PM, frantisek holop wrote:
> Adam Wolk, 26 Feb 2015 12:36:
> > I just experienced a crash in firefox while editing a google doc. I did
> > expect a crash since my login.conf is set to default values but that
> > normally doesn't trigger a core dump from firefox.
>
> i was just wondering if i should send the same :}
>
> > (gdb) bt
> > #0 0x0399f481 in kill () at <stdin>:2
> > #1 0x039dd876 in raise (s=11) at /usr/src/lib/libc/gen/raise.c:39
> > #2 0x0b6eae52 in workerlz4_maxCompressedSize () from
> > /usr/local/lib/firefox-35.0.1/libxul.so.53.0
> > #3 0x0c160002 in JS::PerfMeasurement::canMeasureSomething () from
> > /usr/local/lib/firefox-35.0.1/libxul.so.53.0
> > #4 0x0000000b in ?? ()
> > #5 0x84e0cbf0 in ?? ()
> > #6 0x84e0cb9c in ?? ()
> > #7 0x8388e500 in ?? ()
> > #8 0x7ffffe82 in ?? ()
> > #9 0x2525b250 in ?? () from /usr/lib/libpthread.so.18.1
> > #10 0x7b7e43c0 in ?? ()
> > #11 0x0bf3cab4 in JSContext::sizeOfIncludingThis () from
> > /usr/local/lib/firefox-35.0.1/libxul.so.53.0
> > Previous frame inner to this frame (corrupt stack?)
>
> but i did not have these last frames.
>
> -f
> --
> i am so open-minded my brain falls out.
>
After seeing the following:
(gdb) x/1i $eip
0x399f481 <kill+7>: jb 0x399f464 <fileno+100>
Current language: auto; currently asm
(gdb) i r
eax 0x0 0
ecx 0x0 0
edx 0xb 11
ebx 0x2393c594 596886932
esp 0x84e0cad8 0x84e0cad8
ebp 0x84e0cb04 0x84e0cb04
esi 0xb 11
edi 0x84e0cb9c -2065642596
eip 0x399f481 0x399f481
eflags 0x200292 2097810
cs 0x2b 43
ss 0x33 51
ds 0x33 51
es 0x33 51
fs 0x5b 91
gs 0x63 99
#0 0x0399f481 in kill () at <stdin>:2
#1 0x039dd876 in raise (s=11) at /usr/src/lib/libc/gen/raise.c:39
#2 0x0b6eae52 in workerlz4_maxCompressedSize ()
from /usr/local/lib/firefox-35.0.1/libxul.so.53.0
#3 0x0c160002 in JS::PerfMeasurement::canMeasureSomething ()
from /usr/local/lib/firefox-35.0.1/libxul.so.53.0
One of my friends pointed out that it looks like the following failed
assert:
static inline size_t maxCompressedSize(size_t aInputSize)
{
size_t max = (aInputSize + (aInputSize / 255) + 16);
MOZ_ASSERT(max > aInputSize);
return max;
}