From: Takashi Iwai <tiwai@suse.de>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Andrew Morton <akpm@osdl.org>,
linux-pm@osdl.org, alsa-devel@alsa-project.org,
Jiri Slaby <jirislaby@gmail.com>,
linux-kernel@vger.kernel.org, Pavel Machek <pavel@ucw.cz>,
mingo@elte.hu
Subject: Re: swsusp regression (s2dsk) [Was: 2.6.18-rc2-mm1]
Date: Mon, 31 Jul 2006 15:59:45 +0200 [thread overview]
Message-ID: <s5hodv5an8u.wl%tiwai@suse.de> (raw)
In-Reply-To: <200607301334.38704.rjw@sisk.pl>
At Sun, 30 Jul 2006 13:34:38 +0200,
Rafael J. Wysocki wrote:
>
> On Sunday 30 July 2006 12:54, Jiri Slaby wrote:
> > Uncc: linux-mm
> > Cc: alsa-devel
> > Cc: mingo
> >
> > Rafael J. Wysocki wrote:
> > > On Sunday 30 July 2006 10:08, Jiri Slaby wrote:
> > >> Rafael J. Wysocki napsal(a):
> > >>> On Sunday 30 July 2006 02:06, Pavel Machek wrote:
> > >>>> Hi!
> > >>>>
> > >>>>>>>>> I have problems with swsusp again. While suspending, the very last thing kernel
> > >>>>>>>>> writes is 'restoring higmem' and then hangs, hardly. No sysrq response at all.
> > >>>>>>>>> Here is a snapshot of the screen:
> > >>>>>>>>> http://www.fi.muni.cz/~xslaby/sklad/swsusp_higmem.gif
> > >>>>>>>>>
> > >>>>>>>>> It's SMP system (HT), higmem enabled (1 gig of ram).
> > >>>>>>>> Most probably it hangs in device_power_up(), so the problem seems to be
> > >>>>>>>> with one of the devices that are resumed with IRQs off.
> > >>>>>>>>
> > >>>>>>>> Does vanila .18-rc2 work?
> > >>>>>>> Yup, it does.
> > >>>>>> Can you try up kernel, no highmem? (mem=512M)?
> > >>>>> It writes then:
> > >>>>> p16v: status 0xffffffff, mask 0x00001000, pvoice f7c04a20, use 0
> > >>>>> in endless loop when resuming -- after reading from swap.
> > >>>> Okay, so we have two different problems here.
> >
> > [snip]
> >
> > >>>> and one is probably driver problem with p16v (whatever it is).
> > >>>>
> > >>>> /data/l/linux/sound/pci/emu10k1/irq.c:
> > >>>> snd_printk(KERN_ERR "p16v: status: 0x%08x, mask=0x%08x, pvoice=%p,
> > >>>> use=%d\n", status2, mask, pvoice, pvoice->use);
> > >>>>
> > >>>> ...aha, so you may want to unload emu10k1 for testing.
> > >> Sure, this helped.
> > >
> > > So, we have two different regressions here.
> > >
> > > Please try to revert git-alsa.patch and see if the emu10k1-related problem
> > > goes away.
> >
> > Wow, it didn't helped, I find out there is a difference between in-kernel and
> > modules version of the driver. When compiled as modules (loaded/unloaded)
> > suspending (and resuming) is working ok (enabled higmem and preempt back --
> > still no smp), when compiled in-kernel (see the config diff below), it doesn't
> > resume.
> > @@ -1263,8 +1263,8 @@
> > CONFIG_SND=y
> > CONFIG_SND_TIMER=y
> > CONFIG_SND_PCM=y
> > -CONFIG_SND_HWDEP=m
> > -CONFIG_SND_RAWMIDI=m
> > +CONFIG_SND_HWDEP=y
> > +CONFIG_SND_RAWMIDI=y
> > CONFIG_SND_SEQUENCER=y
> > # CONFIG_SND_SEQ_DUMMY is not set
> > CONFIG_SND_OSSEMUL=y
> > @@ -1282,8 +1282,8 @@
> > #
> > # Generic devices
> > #
> > -CONFIG_SND_AC97_CODEC=m
> > -CONFIG_SND_AC97_BUS=m
> > +CONFIG_SND_AC97_CODEC=y
> > +CONFIG_SND_AC97_BUS=y
> > # CONFIG_SND_DUMMY is not set
> > # CONFIG_SND_VIRMIDI is not set
> > # CONFIG_SND_MTPAV is not set
> > @@ -1347,7 +1347,7 @@
> > # CONFIG_SND_INDIGO is not set
> > # CONFIG_SND_INDIGOIO is not set
> > # CONFIG_SND_INDIGODJ is not set
> > -CONFIG_SND_EMU10K1=m
> > +CONFIG_SND_EMU10K1=y
> > # CONFIG_SND_EMU10K1X is not set
> > # CONFIG_SND_ENS1370 is not set
> > # CONFIG_SND_ENS1371 is not set
>
> If the driver is compiled in, its .suspend() routine gets called before the
> suspend image is restored and puts the card in a state that confuses
> the .resume() called after the image has been restored.
>
> I think snd_emu10k1_suspend() should reset the device if state == PMSG_PRETHAW .
Hm, do we need such inconsitent behavior? I mean, for most drivers,
it doesn't matter whether it's built-in or a module: simply shutdown
at suspend, and initialize at resume.
Takashi
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
next prev parent reply other threads:[~2006-07-31 13:59 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20060727015639.9c89db57.akpm@osdl.org>
2006-07-29 17:58 ` swsusp regression (s2dsk) [Was: 2.6.18-rc2-mm1] Jiri Slaby
2006-07-29 18:59 ` Rafael J. Wysocki
2006-07-29 23:06 ` Jiri Slaby
2006-07-29 23:10 ` Rafael J. Wysocki
2006-07-29 23:59 ` Jiri Slaby
2006-07-30 0:03 ` Jiri Slaby
2006-07-29 23:22 ` Pavel Machek
2006-07-29 23:58 ` Jiri Slaby
2006-07-30 0:06 ` Pavel Machek
2006-07-30 7:31 ` Rafael J. Wysocki
2006-07-30 8:08 ` Jiri Slaby
2006-07-30 9:28 ` Rafael J. Wysocki
2006-07-30 10:54 ` Jiri Slaby
2006-07-30 11:08 ` Pavel Machek
2006-07-30 11:34 ` Rafael J. Wysocki
2006-07-31 13:59 ` Takashi Iwai [this message]
2006-07-31 14:03 ` [Alsa-devel] " Pavel Machek
2006-07-30 11:36 ` James Courtier-Dutton
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=s5hodv5an8u.wl%tiwai@suse.de \
--to=tiwai@suse.de \
--cc=akpm@osdl.org \
--cc=alsa-devel@alsa-project.org \
--cc=jirislaby@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@osdl.org \
--cc=mingo@elte.hu \
--cc=pavel@ucw.cz \
--cc=rjw@sisk.pl \
/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