[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Openvortex-dev] Quad segfault
From: |
Manuel Jander |
Subject: |
Re: [Openvortex-dev] Quad segfault |
Date: |
Thu, 03 Jun 2004 12:02:28 -0400 |
Hi,
I made a patch, which i uploaded to the ALSA bugtracker (acknowledging
Jeff Muizelaar). I couldn't send the bug reporter a note, because there
are some services down at ALSA at the moment.
Anyway, if anyone wants to try it out... attached here.
Thank you Jeff for your time teaching me :D
Best Regards
Manuel
On Thu, 2004-06-03 at 11:00 -0400, Jeff Muizelaar wrote:
> On Thu, Jun 03, 2004 at 10:32:38AM -0400, Manuel Jander wrote:
> > Hi Jeff,
> >
> > I long time since i have heard from you. How are you doing by the way ?
> > Well, going back to the topic, i would ,like to now, how do you did that
> > conclusion. Did you translate the program pointer offset
> > "vortex_core_shutdown+0x3a/0xa0 [snd_au8810]" to the corresponding
> > program line ? And if so, how can that be done easily, since each
> > function call may have different length, and maybe be inlined...
> > I guess i have something to learn yet :D
>
> I am doing pretty well,
> to translate the oops:
>
> from the line:
> EIP is at vortex_connect_default+0x5e/0x1b0 [snd_au8810]
> I figured out that it was in vortex_connect_default.
>
> the code at the bottom disassembles to:
> 0: 80 78 42 00 cmpb $0x0,0x42(%eax)
> 4: 0f 88 f8 00 00 00 js 0x102
> a: 8d 8b 66 05 00 00 lea 0x566(%ebx),%ecx
> 10: 89 f2 mov %esi,%edx
> 12: 89 d8 mov %ebx,%eax
>
> and the only comparision in vortex_connect_default around 0x5e
> is the VORTEX_IS_QUAD stuff. So guessed that was it.
>
> >
> > Regarding the codec pointer, i remember having trouble with that before,
> > and having done something to fix it.
> > #define VORTEX_IS_QUAD(x) ((x->codec == NULL) ? 0 :
> > (x->codec->ext_id&0x80))
> > But as i see, the pointer is not null, because it was not ourselfs who
> > freed that struct ... shit!
>
> If we really want to it looks like we can attach a callback to the codec
> free and we could set it to NULL...
>
> >
> > "...request at virtual address c47f6e3a" != 0.
> >
> > AFAIK, the rc2 of linux-2.6.7 does not include any ALSA update... That
> > means that any machine around there could just segfault at the same
> > situation :-O
>
> I think the reason it showed up for this bug report was because
> DEBUG_PAGEALLOC, so it is probably sort of rare to actually get it, but
> still not good.
>
> >
> > I guess, we should maybe cache the knowledge if the codec is quad or
> > not.
>
> Yeah, that was the best idea I could come up with, without looking
> deeply into it. It doesn't seem like the most elegant thing to do, but
> ohwell.
>
> -Jeff
--
Manuel Jander <address@hidden>
UTFSM
aureal-quadfix.patch
Description: Text Data