Forum Moderators: bakedjake

Message Too Old, No Replies

IDE-SCSI and cdparanoia

         

martin

9:54 am on Dec 13, 2003 (gmt 0)

10+ Year Member



Hi, I've been using IDE-SCSI since I got a CD burner and having problems since then too.

I have a problem using cdparanoia with IDE-SCSI now, it works with my Debian (modular) kernel but not with the one I compiled myself. The problem I suppose is that with the Debian kernel I load ide-cd like this in /etc/modules:

ide-cd ignore=\"hdc hdd\"

With a modular kernel though I have to rmmod ide-cd; modprobe ide-scsi before burning a CD and rmmod ide-scsi; modprobe ide-cd before playing an audio CD. This was quite annoying so I compiled ide-cd, ide-scsi, cdrom, sr_mod, scsi_mod, and sg inline. It now works for burning CDs and playing without the rmmod/modprobe but not for cdparanoia.

I looked around in linux/Documentation/kernel-parameters.txt but I couldn't find a way how to pass the ignore="" to the ide-cd part of an inline kernel. Googling around I found the same syntax as in /etc/modules written in an append line in lilo.conf but it didn't work.

Now cdparanoia works only if I boot the Debian kernel, if I boot my own it says is there an audio CD in the drive, all other things are unchanged.

Anyone got an idea how I can pass that parameter to the kernel or if there's a better way to do it?

Duckula

1:22 pm on Dec 13, 2003 (gmt 0)

10+ Year Member



cdrecord works anyway because the latest version doesn't require scsi emulation at all. cdrdao is going to be a problem (in 2.4 kernels; I'm not sure, I think it's better with 2.6); you can

a) stay with the modular kernel (always a good idea, everything not needed at boot time should be a module for several reasons, including this one); or

b) don't compile support for ide-cd at all and let the kernel to turn your drives in scsi emulation all the time (bad; unnecessary overhead and dma nuisances) or

c) pass 'append="hd?=scsi"' either through lilo or through the kernel commandline at boot time (if anything has to be changed a reboot is required).

p.p.s.
d) schew scsi emulation and use the latest cdrecord, but cdrdao will probably not work.

p.s.
I just noticed the problem. There is no reason to not use a drive with scsi emulation to play music CDs, but your player should point to the corrent device. Instead of /dev/hd? the player (or /dev/cdrom) should use /dev/sg? which is a generic scsi device (I think; I turned off scsi emulation a while ago - I don't use cdrdao. It may be /dev/scd?). This should solve the cdparanoia problem too.

martin

5:27 pm on Dec 13, 2003 (gmt 0)

10+ Year Member



Thanks Duckula,

I already have hdc=ide-scsi hdd=ide-scsi in append in lilo.conf. I have a Slackware Live CD and I noticed that I booted w/o SCSI emulation and could erase a rewritable CD that really surprised me.

I can play audio CDs through /dev/scd0 but not use cdparanoia with it, /dev/cdrom is actually a link to /dev/sr0 which doesn't work for aduio CDs.

I've got an idea although... I'm not sure why but I have my CD-ROM as an IDE-SCSI device too which is probably useless so I'll just remove hdc=ide-scsi from the kernel parameters and I hope it'll work. Btw is there a difference between ide-scsi and scsi that is noticable from a user's point of view?

Duckula

5:42 pm on Dec 13, 2003 (gmt 0)

10+ Year Member



is there a difference between ide-scsi and scsi that is noticable from a user's point of view?

The user should not notice anything (except the overhead)

From the application point of view the reason to exist of ide-scsi is because one doesn't buy expensive scsi hardware, but programs like cdrecord didnt care to implement ide instructions (which are a lot more complicated). ide-scsi is like a translator. It's the same in windows, but using a spaghetti maze of dlls instead.

p.s. If everything but cdparanoia works, make sure that the sg module is loaded and the permissions of /dev/sg? are good enough.

martin

10:12 pm on Dec 13, 2003 (gmt 0)

10+ Year Member



Oh sg is inline too and the permissions are surely OK as it works with the Debian kernel. I found that removing that hdc=ide-scsi helped, I can use cdparanoia now with /dev/hdc although I had to chgrp cdrom /dev/hdc, don't really feel like giving rw permissions to all hard disks to a user.