Phil,
This recent entry from sg's FAQ [2.10] may be useful:
The sg driver (version 3.1.17) found in the early lk 2.4 series in
distributions such as RedHat 7.1 and Mandrake 8 has the tendency to
lock up when a large amount of memory is requested. Recent versions of
cdda2wav (and some other apps) request a 100 MB "reserved" buffer
from sg. This was a little larger than I expected and due to a bug in sg
can cause the driver to lockup (or at least wait for a long time) in the
hope that that much memory (that is, _real_ RAM) will become available.
The process in question will be unkillable and ps's WCHAN usually
shows "-". The solution is to go to the main page and fetch sg version
3.1.19 (or later) and rebuild your kernel (or the sg module). The Alan
Cox series of kernels (lk 2.4.5-ac18 and later) has the corrected sg
driver. As this is a serious problem I may soon generate some binary
rpm packages for the distributions effected.
I first saw this problem on a SCSI cdrom. There were no
oopses.
The sooner this gets into the main kernel, the better.
For that matter, I would like to see all of the SCSI
fixes in the "ac" series placed in the main kernel.
Some of them have been stranded there since January.
Doug Gilbert
> Phil Karn wrote:
> Hi. When I rip audio CDs, cdda2wav 1.9 frequently goes into a tight
> CPU-consuming loop right at startup, without writing anything to disk.
> It cannot be killed even with kill -9, which strongly suggests a
> driver bug.
>
> This happens on both my systems, a single-CPU 600 MHz Pentium-III
> Katmai with 256MB and a newer single-CPU 1GHz Pentium-III Coppermine
> with 512MB. Both run the 2.4.5 kernel. Both have generic Toshiba IDE
> DVD/CD-ROM drives, model SD-M1212 and SD-M1402. I'm using the
> ide-scsi driver to make them look like SCSI drives to cdda2wav.
>
> Sometimes, but not always, I'll get an "oops" in the kernel log. Here is
> one from last night run through ksymoops:
>
> ksymoops 2.3.4 on i686 2.4.5. Options used
> -V (default)
> -k /proc/ksyms (default)
> -l /proc/modules (default)
> -o /lib/modules/2.4.5/ (default)
> -m /System.map (specified)
>
> Warning (compare_maps): ksyms_base symbol __VERSIONED_SYMBOL(shmem_file_setup) not
>found in System.map. Ignoring ksyms_base entry
> Unable to handle kernel paging request at virtual address 7bbb0d93
> c016785c
> *pde =
> Oops:
> CPU:0
> EIP:0010:[]
> Using defaults from ksymoops -t elf32-i386 -a i386
> EFLAGS: 00010006
> eax: 7bbb0d1b ebx: 0206 ecx: edx: 7bbb0d1b
> esi: c6029064 edi: c6029040 ebp: c52505a0 esp: cc6cff00
> ds: 0018 es: 0018 ss: 0018
> Process cdda2wav (pid: 11406, stackpage=cc6cf000)
> Stack: d9683d80 e0964ee7 7bbb0d1b d9683d80 cc6cff6c db4a 7770 e0965a94
>0802 0001 08068000 cc6cff78 cc6cff6c e0964ac0 c6029000
>c6029040 cc6cff6c 0802 0001 c632e480 ffea 0030
> Call Trace: [] [] [] [] [] [ 010002b>]
> Code: 80 7a 78 00 74 15 c6 42 78 00 8d 42 28 39 42 28 74 09 52 8b
>
> >>EIP; c016785c<=
> Trace; e0964ee7
> Trace; e0965a94
> Trace; e0964ac0
> Trace; c012c06b
> Trace; c0106a7b
> Code; c016785c
> <_EIP>:
> Code; c016785c<=
>0: 80 7a 78 00 cmpb $0x0,0x78(%edx) <=
> Code; c0167860
>4: 74 15 je 1b <_EIP+0x1b> c0167877
>
> Code; c0167862
>6: c6 42 78 00 movb $0x0,0x78(%edx)
> Code; c0167866
>a: 8d 42 28 lea0x28(%edx),%eax
> Code; c0167869
>d: 39 42 28 cmp%eax,0x28(%edx)
> Code; c016786c
> 10: 74 09 je 1b <_EIP+0x1b> c0167877
>
> Code; c016786e
> 12: 52push %edx
> Code; c016786f
> 13: 8b 00 mov(%eax),%eax
>
> 1 warning issued. Results may not be reliable.
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to [EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]