From: Felipe Balbi <me@felipebalbi.com>
To: Felipe Balbi <me@felipebalbi.com>
Cc: Steve Sakoman <sakoman@gmail.com>,
Jarkko Nikula <jarkko.nikula@nokia.com>,
"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>
Subject: Re: [RFC 0/2] McBSP and ASoC OMAP update patches for 2430 and 34xx
Date: Tue, 26 Aug 2008 01:54:52 +0300 [thread overview]
Message-ID: <20080825225450.GI14939@frodo> (raw)
In-Reply-To: <20080825224003.GH14939@frodo>
On Tue, Aug 26, 2008 at 01:40:06AM +0300, Felipe Balbi wrote:
> On Mon, Aug 25, 2008 at 03:30:13PM -0700, Steve Sakoman wrote:
> > > Hmm, so the crash is actually somewhere else. Could you disable debug
> > > and get the NULL pointer dereference at the right point ?
> >
> > The output is below. The crash seems to occur at the substream
> > pointer dereference in the second line of snd_pcm_info (in
> > pcm_native.c):
> >
> > struct snd_pcm *pcm = substream->pcm;
>
> yeah, at that point substream was NULL. I'm trying to trace the function
> call to see why substream is getting NULLed.
>
> I think the following patch is anyway a good thing to apply:
>
> diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
> index c49b9d9..c7c15cf 100644
> --- a/sound/core/pcm_native.c
> +++ b/sound/core/pcm_native.c
> @@ -92,10 +92,11 @@ static inline void snd_leave_user(mm_segment_t fs)
> int snd_pcm_info(struct snd_pcm_substream *substream, struct snd_pcm_info *info)
> {
> struct snd_pcm_runtime *runtime;
> - struct snd_pcm *pcm = substream->pcm;
> + struct snd_pcm *pcm;
> struct snd_pcm_str *pstr = substream->pstr;
>
> snd_assert(substream != NULL, return -ENXIO);
> + pcm = substream->pcm;
> memset(info, 0, sizeof(*info));
> info->card = pcm->card->number;
> info->device = pcm->device;
can you also apply this other patch:
diff --git a/sound/core/pcm.c b/sound/core/pcm.c
index 9dd9bc7..b8f43f3 100644
--- a/sound/core/pcm.c
+++ b/sound/core/pcm.c
@@ -774,7 +774,7 @@ int snd_pcm_attach_substream(struct snd_pcm *pcm, int stream,
size_t size;
snd_assert(rsubstream != NULL, return -EINVAL);
- *rsubstream = NULL;
+// *rsubstream = NULL; why NULL it ?? need to investigate more
snd_assert(pcm != NULL, return -ENXIO);
pstr = &pcm->streams[stream];
if (pstr->substream == NULL || pstr->substream_count == 0)
@@ -795,8 +795,11 @@ int snd_pcm_attach_substream(struct snd_pcm *pcm, int stream,
case SNDRV_PCM_STREAM_PLAYBACK:
if (pcm->info_flags & SNDRV_PCM_INFO_HALF_DUPLEX) {
for (substream = pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream; substream; substream = substream->
- if (SUBSTREAM_BUSY(substream))
+ if (!substream)
return -EAGAIN;
+
+ if (SUBSTREAM_BUSY(substream))
+ continue;
}
}
break;
@@ -875,6 +878,10 @@ int snd_pcm_attach_substream(struct snd_pcm *pcm, int stream,
substream->ref_count = 1;
substream->f_flags = file->f_flags;
pstr->substream_opened++;
+
+ if (!substream)
+ printk(KERN_INFO "substream is NULL\n");
+
*rsubstream = substream;
return 0;
}
--
balbi
next prev parent reply other threads:[~2008-08-25 22:55 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-21 11:55 [RFC 0/2] McBSP and ASoC OMAP update patches for 2430 and 34xx Jarkko Nikula
2008-08-21 11:55 ` [RFC] ARM: OMAP: Add support for OMAP2430 in McBSP Jarkko Nikula
2008-08-21 11:55 ` [RFC] ASoC: OMAP: Add support for OMAP2430 and OMAP34xx in McBSP DAI driver Jarkko Nikula
2008-08-21 21:51 ` [RFC 0/2] McBSP and ASoC OMAP update patches for 2430 and 34xx Steve Sakoman
2008-08-22 7:57 ` Jarkko Nikula
2008-08-25 19:19 ` Steve Sakoman
2008-08-25 19:29 ` Felipe Balbi
2008-08-25 21:35 ` Felipe Balbi
2008-08-25 21:39 ` Felipe Balbi
2008-08-25 21:50 ` Steve Sakoman
2008-08-25 21:53 ` Felipe Balbi
2008-08-25 22:13 ` Steve Sakoman
2008-08-25 22:30 ` Steve Sakoman
2008-08-25 22:40 ` Felipe Balbi
2008-08-25 22:54 ` Felipe Balbi [this message]
2008-08-25 23:34 ` Steve Sakoman
2008-08-26 0:08 ` Felipe Balbi
2008-08-26 13:19 ` Jarkko Nikula
2008-08-26 14:23 ` Steve Sakoman
2008-08-26 17:18 ` Steve Sakoman
2008-08-27 6:38 ` Jarkko Nikula
2008-08-27 13:39 ` Steve Sakoman
2008-08-27 20:57 ` Steve Sakoman
2008-08-27 21:25 ` Koen Kooi
2008-08-27 22:14 ` Steve Sakoman
2008-08-28 11:03 ` Jarkko Nikula
2008-08-23 11:32 ` Arun KS
2008-09-05 1:12 ` Tony Lindgren
2008-09-05 6:18 ` Steve Sakoman
2008-09-05 16:56 ` Tony Lindgren
2008-09-05 17:23 ` Steve Sakoman
2008-09-05 17:52 ` Tony Lindgren
2008-09-08 10:29 ` [RFC 0/2 rev2] " Jarkko Nikula
2008-09-09 0:48 ` Tony Lindgren
2008-09-08 10:29 ` [RFC rev2] ARM: OMAP: Add support for OMAP2430 in McBSP Jarkko Nikula
2008-09-08 10:29 ` [RFC rev2] ASoC: OMAP: Add support for OMAP2430 and OMAP34xx in McBSP DAI driver Jarkko Nikula
2008-09-20 11:22 ` [RFC 0/2] McBSP and ASoC OMAP update patches for 2430 and 34xx Arun KS
2008-09-20 11:41 ` Koen Kooi
2008-09-20 12:03 ` Arun KS
[not found] ` <dfeb90390809200453i35da7891lcea6d620dbb0e46a@mail.gmail.com>
2008-09-20 12:21 ` Koen Kooi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080825225450.GI14939@frodo \
--to=me@felipebalbi.com \
--cc=jarkko.nikula@nokia.com \
--cc=linux-omap@vger.kernel.org \
--cc=sakoman@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox