2000-12-04 21:57:59

by Steven Cole

[permalink] [raw]
Subject: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

If I have the cs46xx driver compiled either as a module or into
the kernel, then 2.4.0-test12-pre4 locks up when KDE 2.0
is started.

The problem with dummy.o in 2.4.0-test12-pre4 allowed me
to find the possible source of this lock-up which I have been
seeing recently (since test11-ac2) while starting up KDE 2.0.

This morning, I tried out 2.4.0-test12-pre4, and KDE 2.0
started up (and there was much rejoicing). Of course, I
saw the error when I tried to make modules, but I thought
could live without sound for one bootup.

Then I applied Mohammad A. Haque's small patch to
linux/include/linux/module.h, recompiled , and the system
froze again at the same spot ("Loading the panel")
while starting up KDE 2.0.

I found that if I said N for the cs46xx sound driver, then I
get a 2.4.0-test12-pre4 kernel that will run KDE 2.0,
sans sound :(.

I can run GNOME with 2.4.0-test12-pre4 with
cs46xx compiled as a module or compiled into the kernel,
and everything works just fine.

Here is some additional information from /var/log/messages:
2.4.0-test10 works OK with KDE 2.0 and sound.

For 2.4.0-test12-pre4:

Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

For 2.4.0-test10:

Crystal 4280/461x + AC97 Audio, version 0.09, 15:31:37 Nov 1 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (1028:0096) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

The hardware is a DELL 420 dual P-III.
The base linux distro is Linux-Mandrake 7.2.
Filesystems are ReiserFS, running reiserfs-3.6.19 for test12
and reiserfs-3.6.18 for test10.

Note: The ReiserFS folks looked at this, but could
not reproduce this on another smp machine. That
was before I noticed the connection with cs46xx.

When I say the system freezes, I mean it completely locks up, and
ALT-SYSRQ-<whatevercommand> does not do a thing. The magic
key combo gives the expected result before freezup.

Thanks in advance for any help,

Steven


2000-12-04 22:26:43

by Keith Owens

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Mon, 4 Dec 2000 14:27:10 -0700,
Steven Cole <[email protected]> wrote:
>If I have the cs46xx driver compiled either as a module or into
>the kernel, then 2.4.0-test12-pre4 locks up when KDE 2.0
>is started.
>[snip]
>When I say the system freezes, I mean it completely locks up, and
>ALT-SYSRQ-<whatevercommand> does not do a thing. The magic
>key combo gives the expected result before freezup.

Try the kdb patch, it is very good at getting data out when a machine
has hung. You will need a serial console to see kdb output, it does
not work with X.

ftp://oss.sgi.com/projects/kdb/download/ix86/

kdb-v1.6-2.4.0-test11-pre7.gz should still fit 2.4.0-test12-pre4.

2000-12-04 23:21:46

by Roger Larsson

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

Hi,

I am seeing something strange too, trying to reliably reproduce it
for a while - it is rare but irritating.
Most likely to happen on cold power on (first@evening)

--- X ---

XFree86 Version 3.3.6 / X Window System
(protocol Version 11, revision 0, vendor release 6300)
Release Date: January 8 1999
If the server is older than 6-12 months, or if your card is newer
than the above date, look for a newer version before reporting
problems. (see http://www.XFree86.Org/FAQ)
Operating System: Linux 2.2.14 i686 [ELF] SuSE

Voodo 3 2000 (PCI)
now running unaccelerated

--- KDE 2 ---

--- Audio, with or without audio ---

--- Kernel ---
2.2.16 or 2.4.0-testXX


I have more or less come to the conclusion that it is some KDE 2 interaction
with the X server that triggers this...
And that the OS - keyboard and video still runs.
I have seen data IO on modem after freeze...
(Thinking about trying another window manager for awhile...)

But every time I have had an opportunity to hook up another computer, like
tonight - It does not happen... :-(

/RogerL

On Monday 04 December 2000 22:27, Steven Cole wrote:
> If I have the cs46xx driver compiled either as a module or into
> the kernel, then 2.4.0-test12-pre4 locks up when KDE 2.0
> is started.
>
> The problem with dummy.o in 2.4.0-test12-pre4 allowed me
> to find the possible source of this lock-up which I have been
> seeing recently (since test11-ac2) while starting up KDE 2.0.
>
> This morning, I tried out 2.4.0-test12-pre4, and KDE 2.0
> started up (and there was much rejoicing). Of course, I
> saw the error when I tried to make modules, but I thought
> could live without sound for one bootup.
>
> Then I applied Mohammad A. Haque's small patch to
> linux/include/linux/module.h, recompiled , and the system
> froze again at the same spot ("Loading the panel")
> while starting up KDE 2.0.
>
> I found that if I said N for the cs46xx sound driver, then I
> get a 2.4.0-test12-pre4 kernel that will run KDE 2.0,
> sans sound :(.
>
> I can run GNOME with 2.4.0-test12-pre4 with
> cs46xx compiled as a module or compiled into the kernel,
> and everything works just fine.
>
> Here is some additional information from /var/log/messages:
> 2.4.0-test10 works OK with KDE 2.0 and sound.
>
> For 2.4.0-test12-pre4:
>
> Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
> cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
> ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)
>
> For 2.4.0-test10:
>
> Crystal 4280/461x + AC97 Audio, version 0.09, 15:31:37 Nov 1 2000
> cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> cs461x: Unknown card (1028:0096) at 0xf8ffe000/0xf8e00000, IRQ 18
> ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)
>
> The hardware is a DELL 420 dual P-III.
> The base linux distro is Linux-Mandrake 7.2.
> Filesystems are ReiserFS, running reiserfs-3.6.19 for test12
> and reiserfs-3.6.18 for test10.
>
> Note: The ReiserFS folks looked at this, but could
> not reproduce this on another smp machine. That
> was before I noticed the connection with cs46xx.
>
> When I say the system freezes, I mean it completely locks up, and
> ALT-SYSRQ-<whatevercommand> does not do a thing. The magic
> key combo gives the expected result before freezup.
>
> Thanks in advance for any help,
>
> Steven
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> Please read the FAQ at http://www.tux.org/lkml/

--
--
Home page:
http://www.norran.net/nra02596/

2000-12-04 23:53:18

by Alan

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

> Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
> cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
> ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

This is failing to detect the CS46xx. I assume someone has fiddled with the
driver. Does it work correctly on your machine in 2.2.18pre24 ?


2000-12-05 00:00:08

by Alan

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

> > Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
> > cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> > cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
> > ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)
>
> This is failing to detect the CS46xx. I assume someone has fiddled with the
> driver. Does it work correctly on your machine in 2.2.18pre24 ?

A follow on question. This may be 2.4 PCI changes. That would mean you might
want..

--- drivers/sound/cs46xx.c~ Sat Dec 2 01:44:21 2000
+++ drivers/sound/cs46xx.c Mon Dec 4 22:58:58 2000
@@ -2534,6 +2534,11 @@
struct cs_card *card;
struct cs_card_type *cp = &cards[0];

+ if (pci_enable_device(pci_dev)<0)
+ {
+ printk(KERN_ERR "cs461x: unable to enable\n");
+ return -EIO;
+ }
if ((card = kmalloc(sizeof(struct cs_card), GFP_KERNEL)) == NULL) {
printk(KERN_ERR "cs461x: out of memory\n");
return -ENOMEM;

2000-12-05 02:12:40

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

Alan Cox wrote:
>> > Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
>> > cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
>> > cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
>> > ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)
>>
>> This is failing to detect the CS46xx. I assume someone has fiddled with the
>> driver. Does it work correctly on your machine in 2.2.18pre24 ?

I believe it did for 2.2.18pre23. I'll try out 2.2.18pre24 and your
following patch when I'm back at work about 12 hours from now.
Thanks!
Steven Cole

Alan Cox wrote:
>
>A follow on question. This may be 2.4 PCI changes. That would mean you might
>want..
>
>--- drivers/sound/cs46xx.c~ Sat Dec 2 01:44:21 2000
>+++ drivers/sound/cs46xx.c Mon Dec 4 22:58:58 2000
>@@ -2534,6 +2534,11 @@
> struct cs_card *card;
> struct cs_card_type *cp = &cards[0];
>
>+ if (pci_enable_device(pci_dev)<0)
>+ {
>+ printk(KERN_ERR "cs461x: unable to enable\n");
>+ return -EIO;
>+ }
> if ((card = kmalloc(sizeof(struct cs_card), GFP_KERNEL)) == NULL) {
> printk(KERN_ERR "cs461x: out of memory\n");
> return -ENOMEM;

I'll apply that patch tomorrow.

Steven

2000-12-05 17:47:45

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Monday 04 December 2000 16:29, Alan Cox wrote:
> > > Crystal 4280/461x + AC97 Audio, version 0.14, 13:39:25 Dec 4 2000
> > > cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> > > cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ
> > > 18 ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)
> >
> > This is failing to detect the CS46xx. I assume someone has fiddled with
> > the driver. Does it work correctly on your machine in 2.2.18pre24 ?

2.2.18pre24 works just fine, sound and everything, with KDE 2.0. That's
what I'm running right now. I had to fool around with the reiserfs-3.5.27
patch for one file, but that was no problem.

>
> A follow on question. This may be 2.4 PCI changes. That would mean you
> might want..
>
> --- drivers/sound/cs46xx.c~ Sat Dec 2 01:44:21 2000
> +++ drivers/sound/cs46xx.c Mon Dec 4 22:58:58 2000
> @@ -2534,6 +2534,11 @@
> struct cs_card *card;
> struct cs_card_type *cp = &cards[0];
>
> + if (pci_enable_device(pci_dev)<0)
> + {
> + printk(KERN_ERR "cs461x: unable to enable\n");
> + return -EIO;
> + }
> if ((card = kmalloc(sizeof(struct cs_card), GFP_KERNEL)) == NULL) {
> printk(KERN_ERR "cs461x: out of memory\n");
> return -ENOMEM;

OK, I patched in the above for both 2.4.0-test12-pre4 and pre5, but did not
get any "unable to enable" printk messages appearing in /var/log/messages.

The behavior of course is the same, that is, sound will work under GNOME, but
starting up KDE 2.0 freezes the machine. To get modules to work with
2.4.0-test12-pre5, I had to modify linux/include/linux/module.h, line 348, as
was the case with test12-pre4. This was the patch that was posted to the list
by Mohammad A. Haque. (Put parenthesis around the bare some_struct).

Here are some lines from messages for the three bootups which I tried:

>From 2.2.18pre24: (sound works with both KDE 2.0 and GNOME)

Crystal 4280/461x + AC97 Audio, version 0.13, 08:56:46 Dec 5 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (1028:0096) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, vendor id1: 0x4352, id2: 0x5914 (Unknown)

>From 2.4.0-test12-pre4 with your above patch: (KDE 2.0 freezes)

Crystal 4280/461x + AC97 Audio, version 0.14, 07:16:56 Dec 5 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

>From 2.4.0-test12-pre5 with your above patch: (KDE 2.0 freezes)

Crystal 4280/461x + AC97 Audio, version 0.14, 09:25:46 Dec 5 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

I guess my next step is to learn how to set up a Serial Console for further
troubleshooting. Any further help appreciated.

Steven

2000-12-05 22:30:46

by Alan

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

> Crystal 4280/461x + AC97 Audio, version 0.13, 08:56:46 Dec 5 2000
> cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> cs461x: Unknown card (1028:0096) at 0xf8ffe000/0xf8e00000, IRQ 18
> ac97_codec: AC97 Audio codec, vendor id1: 0x4352, id2: 0x5914 (Unknown)

This correctly sees the card

> cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18

This gets garbage back when it reads the vendor subids. I dont at this point
see it being a sound bug but a pci layer bug


2000-12-05 23:23:13

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Tuesday 05 December 2000 15:02, Alan Cox wrote:
>
> > cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
> > cs461x: Unknown card (FFFFFFFF:FFFFFFFF) at 0xf8ffe000/0xf8e00000, IRQ 18
>
> This gets garbage back when it reads the vendor subids. I dont at this
> point see it being a sound bug but a pci layer bug

I just repeated some of my earlier tests, and I was _wrong_ about
2.4.0-test11-ac1 working with KDE on my machine. I probably didn't
do the make modules, make modules_install properly, and as a result,
did not have sound and KDE came up properly. For test11-ac1, the
relevant section of messages is the same as above, and ac1 freezes
on the KDE 2.0 startup.

I did confirm that 2.4.0-test11(final) works properly with sound and KDE 2.0.

I do think its rather odd that these test12-pre3,4,5 kernels all work with
GNOME and the CD player works then. KDE 2.0 is doing something different
at the "Loading the panel" stage that causes this bug to surface.

If there any config options or tests I can do, please let me know. I'm
looking into the serial console thing.

Steven

2000-12-06 01:41:14

by Alan

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

> I did confirm that 2.4.0-test11(final) works properly with sound and KDE 2.0.

Ok. That sounds even more like its PCI changes

> I do think its rather odd that these test12-pre3,4,5 kernels all work with
> GNOME and the CD player works then. KDE 2.0 is doing something different
> at the "Loading the panel" stage that causes this bug to surface.

Do you have a battery monitoring applet running in KDE and not gnome ?

2000-12-06 15:26:03

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Tuesday 05 December 2000 18:00, Alan Cox wrote:
> > I did confirm that 2.4.0-test11(final) works properly with sound and KDE
> > 2.0.
>
> Ok. That sounds even more like its PCI changes
>
> > I do think its rather odd that these test12-pre3,4,5 kernels all work
> > with GNOME and the CD player works then. KDE 2.0 is doing something
> > different at the "Loading the panel" stage that causes this bug to
> > surface.
>
> Do you have a battery monitoring applet running in KDE and not gnome ?

No, I checked the list of applets, and no battery monitoring applet.
I configured the panel to "Load only trusted applets internal", and depleted
the list of trusted applets, tested again with test11-ac1 and it froze in the
same place as always.

With respect to a battery monitor, in the KDE control center, the Battery
Monitor section of Power Control notes that "Your computer doesn't have the
Linux APM (Advanced Power Management) software drivers installed, or doesn't
have the APM kernel drivers installed -"

Steven

2000-12-06 16:35:21

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Tuesday 05 December 2000 18:00, Alan Cox wrote:
> > I did confirm that 2.4.0-test11(final) works properly with sound and KDE
> > 2.0.
>
> Ok. That sounds even more like its PCI changes
>

Some new information:

I copied the cs46xx.c driver from 2.4.0-test11 to 2.4.0-test11-ac1,
rebuilt, and I got a test11-ac1 kernel which works with KDE 2.0 and sound.

I then repeated the same with 2.4.0-test12-pre6 (which failed earlier), and
it now works too, that is I can run 2.4.0-test12-pre6 with sound and
KDE 2.0, with the old test11(final) cs46xx sound driver compiled as a module.
I didn't try compiling the old driver into the kernel, but that should work
too. I saved the test12-pre6 cs46xx.c in case further testing is needed.

Now I'll revert to 2.4.0-test11(final) as the ReiserFS folks are warning that
test12-pre5 is unsafe with reiserfs; a fix is in progress.

Steven

2000-12-06 19:14:20

by Nils Faerber

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Wed, 06 Dec 2000, Steven Cole wrote:
> On Tuesday 05 December 2000 18:00, Alan Cox wrote:
> > > I did confirm that 2.4.0-test11(final) works properly with sound and KDE
> > > 2.0.
> > Ok. That sounds even more like its PCI changes
> I copied the cs46xx.c driver from 2.4.0-test11 to 2.4.0-test11-ac1,
> rebuilt, and I got a test11-ac1 kernel which works with KDE 2.0 and sound.
[...]
A much improved version of this driver will hopefully show up real soon in the
latest test12 kernels. We, i.e. Thomas Woller from Cirrus, me and some others,
did a lot of work on the driver lately. The new driver even supports mmap sound
so that most of the games work ;)
Some others reported system freezes with the old (test11) driver which are
fixed now too.
The patch has alread been sent to Linus and will hopefully show up in test12
real soon.

> Steven
Have fun!
nils faerber

--
kernel concepts Tel: +49-271-771091-12
Dreisbachstr. 24 Fax: +49-271-771091-19
D-57250 Netphen D1 : +49-170-2729106
--

2000-12-07 13:56:31

by Alan

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

> I copied the cs46xx.c driver from 2.4.0-test11 to 2.4.0-test11-ac1,
> rebuilt, and I got a test11-ac1 kernel which works with KDE 2.0 and sound.

Excellent, that really narrows it down. Once 2.2.18 is out I will try and
get to the bottom of this

2000-12-07 14:59:04

by Steven Cole

[permalink] [raw]
Subject: Re: 2.4.0-test12-pre4 + cs46xx + KDE 2.0 = frozen system

On Thursday 07 December 2000 06:28, Alan Cox wrote:
> > I copied the cs46xx.c driver from 2.4.0-test11 to 2.4.0-test11-ac1,
> > rebuilt, and I got a test11-ac1 kernel which works with KDE 2.0 and
> > sound.
>
> Excellent, that really narrows it down. Once 2.2.18 is out I will try and
> get to the bottom of this

Linus Torvalds wrote:
>The only reason for this pre7 is to resolve some warring patches in the
>cs46xx driver.

It looks like cs46xx version 1.10 is a winner.

Crystal 4280/461x + AC97 Audio, version 1.10, 07:08:39 Dec 7 2000
cs461x: Card found at 0xf8ffe000 and 0xf8e00000, IRQ 18
cs461x: Unknown card (1028:0096) at 0xf8ffe000/0xf8e00000, IRQ 18
ac97_codec: AC97 Audio codec, id: 0x4352:0x5914 (Unknown)

The cs46xx driver in test12-pre7 by Nils Faerber, Thomas Woller, et al works
great with my troublesome Dell 420. I'm now listening to music on the CD,
running KDE 2.0 with the machine booted up on 2.4.0-test12-pre7.

Many thanks to all who helped with this.

Steven