[alsa-devel] lock-up when loading desktop

Takashi Iwai tiwai at suse.de
Mon Oct 13 16:25:18 CEST 2014


At Mon, 13 Oct 2014 23:34:41 +1030,
Arthur Marsh wrote:
> 
> 
> 
> Takashi Iwai wrote, on 13/10/14 23:10:
> 
> > OK, then could you check whether reverting only the last one (of two)
> > does *NOT* fix the issue?  I think it shouldn't, but let us confirm.
> 
> Thanks for the feedback. Sorry, I'm not good on git commands. Having 
> applied the two reversions previously, how do I get my git tree back to 
> the same state as Linus' git head (ie undo the reversions)?

Suppose your tree is now with two reverts, just run "git reset --hard
HEAD~".  Then it goes back in a single commit.

> I could then apply the second reversion only and test that.
> 
> >
> > The alsa-info.sh shows the lockdep messages.  I assume that it's seen
> > even before 3.17+?
> 
> I didn't see ALSA-related lockdep messages in 3.17.0 or earlier, and 
> have had the lockdep validator option enabled on kernels for several 
> months now.

OK, so it's a new message.  But this appears after you reverted two
commits, right?  Then the lock code base in sound core should be
identical with 3.17.  Strange.  Do you see anything when you run

   git diff v3.17.. sound/core/pcm_native.c

on the tree with two reverts?


> > Last but not least, please check whether nonatomic flag is set wrongly
> > by some reason like the patch below.  (Check the kernel message after
> > boot or try to playback some PCM).
> >
> >
> > Takashi
> >
> > ---
> > diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
> > index 85fe1a216225..9c7cbd1b839e 100644
> > --- a/sound/core/pcm_native.c
> > +++ b/sound/core/pcm_native.c
> > @@ -2275,6 +2275,9 @@ static int snd_pcm_open(struct file *file, struct snd_pcm *pcm, int stream)
> >   	int err;
> >   	wait_queue_t wait;
> >
> > +	if (WARN_ON(pcm->nonatomic))
> > +		return -EINVAL;
> > +
> >   	if (pcm == NULL) {
> >   		err = -ENODEV;
> >   		goto __error1;
> >
> >
> 
> I can apply this patch, but I'm not entirely sure how to check for the 
> state of the nonatomic flag.

If it were wrongly set, the PCM open would show the kernel warning and
abort immediately, so you'll notice soon.

One more test would be to check the direct merge to 3.17 as I've
tested.

- Go to git tree, check out some branch
   % git checkout -b sound-test

- Reset to vanilla 3.17
   % git reset --hard v3.17

- Merge only the sound changes onto it
   % git merge fd1a2a90d08b0052fa52bd36cebd0592c9e537c2

  Give any merge messages as you like.

- Compile and retest whether the same problem happens with this one.


thanks!

Takashi


More information about the Alsa-devel mailing list