mcdx.c (1.3.93) + Audio Player Workman = system freezes

Matthias Suencksen (msuencks@techfak.uni-bielefeld.de)
Mon, 29 Apr 1996 21:34:50 +0000


I have expierenced a system freeze with the new mitsumi CD-ROM
driver mcdx.c. I use the 1.3.93 kernel on a 486 and a FX-001D
CD-ROM-Drive, mcdx as module.

It can be reproduced by pressing "play" in the CD-audio-player
"workman" and then "stop". It's interesting that the crash only happens
when i use the cd-player "workman", not when i use "workbone".

I traced the bug down to the IOCTL CDROM_STOP, the drivers goes
then through the following functions:

mcdx_stop -> mcdx_talk -> mcdx_getval -> mcdx_delay ,

and here the kernel (only with "workman") halts near line 870:

while (current->time) { interruptible_sleep_on ... }

After removing the while around the "interruptible_sleep_on"
it worked better.

But as I am no kernel hacker, I don`t know what i have _really_ done :-)

Matthias Suencksen --- msuencks@techfak.uni-bielefeld.de