NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/52195 (segfault in audio_fill_silence())
The following reply was made to PR kern/52195; it has been noted by GNATS.
From: Manuel Bouyer <bouyer%antioche.eu.org@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: nat%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Subject: Re: kern/52195 (segfault in audio_fill_silence())
Date: Wed, 26 Apr 2017 09:13:30 +0200
On Tue, Apr 25, 2017 at 10:20:01PM +0000, Nathanial Sloss wrote:
> The following reply was made to PR kern/52195; it has been noted by GNATS.
>
> From: Nathanial Sloss <nat%netbsd.org@localhost>
> To: gnats-bugs%netbsd.org@localhost
> Cc:
> Subject: Re: kern/52195 (segfault in audio_fill_silence())
> Date: Wed, 26 Apr 2017 08:15:42 +1000
>
> Hi,
>
> What is the offending portion of code in the previos function of the backtrace.
>
> The audio_mix.part.27+0x61c?
gdb tells me:
(gdb) l *(audio_mix+0x61c)
0x8020a6d4 is in audio_mix (/local/armandeche1/can/src/sys/dev/audio_if.h:107).
102 static __inline uint8_t *
103 audio_stream_add_inp(audio_stream_t *s, uint8_t *v, int diff)
104 {
105 s->used += diff;
106 v += diff;
107 if (v >= s->end)
108 v -= s->end - s->start;
109 return v;
110 }
but this doesn't make much sense. nm shows that audio_mix.part.27 is at
0x8020a0b8, but 0x8020a0b8+0x61c points to the same place in code.
Maybe this is better:
(gdb) l *(audio_mix+0x618)
0x8020a6d0 is in audio_mix (/local/armandeche1/can/src/sys/dev/audio.c:3531).
3526 } else {
3527 vc->sc_sil_start = inp;
3528 vc->sc_sil_count = cc;
3529 DPRINTFN(5, ("audio_pint_silence: start fill %p %d\n",
3530 inp, cc));
3531 audio_fill_silence(&cb->s.param, inp, cc);
3532 }
3533 }
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index