[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

scsi emulation for CD burner



Hello

I'm having big troubles when I try to use my ide CD burner with scsi emulation.

(Question #1 : is it true we have to use scsi emulation in order to burn CDs with a IDE cd burner ?)

The problems begin when the system tries to load the ide-scsi module (when I manually load it with modprobe, when I run cdrecord -scanbus, when I try to mount a CD, etc...). As soon as the module is needed, the system enters an infinite loop :

syslog shows me this:

kernel: scsi : aborting command due to timeout : pid 0, scssi0, channel 0, id 0, lun 0 Inquiry 00 00 00 ff 00
hdc: lost interrupt
kernel: ide-scsi: The scsi wants to send us more data than expected - discarding data
kernel: ide-scsi: [[ 12 0 0 0 ff 0 0 0 0 0 0 0 ]
kernel: ]
kernel: ide-scsi: expected 256 got 352 limit 256
kernel: hdc: lost interrupt
kernel: ide-scsi: The scsi wants to send us more data than expected - discarding data
kernel: ide-scsi: [[ 12 0 0 0 ff 0 0 0 0 0 0 0 ]
kernel: ]
[... endless loop]

Here is my configuration:

I have 2 hard drives (hda, hdb) on bus ide0
I have 1 Samsung SW-240B CD burner (hdc) on bus ide1

I use Debian Sid, kernel 2.4.22 with this compilation options :

loopback device support : M
scsi support (scsi_mod) : M
scsi cdrom support (sr_mod) : M
scsi generic support (sg) : M
scsi emulation support (ide-scsi) : M
include atapi-cdrom (ide-cd) : M
iso9660 cdrom FS : M
microsoft joliet cdrom : Y

I have these lines in modules.conf:

alias scd0 sr_mod  #load sr_mod upon access of scd0
alias scd1 sr_mod
alias scd2 sr_mod
alias scd3 sr_mod
pre-install sg modprobe ide-scsi       #load ide-scsi before sg
pre-install sr_mod modprobe ide-scsi #load ide-scsi before sr_mod
pre-install ide-scsi modprobe ide-cd #load ide-cd before ide-scsi

I've added append "hdc=ide-scsi" in lilo.conf:

image=/vmlinuz
       label=Linux
       append="hdc=ide-scsi acpi=off"
       read-only
#       restricted
#       alias=1

Question #2 : I've read contradictory things about "hdc=ide-scsi". Some people say that this line is useless when compiling ide-scsi as a module. Some people says you HAVE TO put it there anyway. And some people say that the correct syntax for the latest kernels is
"hdX=scsi" instead of "hdX=ide-scsi".
I don't know who/what to believe.

Now, let's take an example of what happens in my system:

When I boot my linux, syslog shows me this :

[...]
kernel: ide_setup: hdc=ide-scsi
[...]
kernel: Uniform Multi-Platform E-IDE driver Revision: 7.00b eta4-2.4
kernel: ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
kernel: ICH2: IDE controller at PCI slot 00:1f.1
kernel: ICH2: chipset revision 18
kernel: ICH2: not 100%% native mode: will probe irqs later
kernel:     ide0: BM-DMA at 0xa800-0xa807, BIOS settings: h da:DMA, hdb:DMA
kernel:     ide1: BM-DMA at 0xa808-0xa80f, BIOS settings: h dc:DMA, hdd:pio
kernel: hda: WDC WD400BB-75AUA1, ATA DISK drive
kernel: hdb: WDC WD1200BB-00CAA1, ATA DISK drive
kernel: blk: queue c02b8840, I/O limit 4095Mb (mask 0xfffff fff)
kernel: blk: queue c02b897c, I/O limit 4095Mb (mask 0xfffff fff)
kernel: hdc: SAMSUNG CD-R/RW SW-240B, ATAPI CD/DVD-ROM driv e
kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
kernel: ide1 at 0x170-0x177,0x376 on irq 15
kernel: hda: attached ide-disk driver.
kernel: hda: host protected area => 1
kernel: hda: 78165360 sectors (40021 MB) w/2048KiB Cache, C HS=4865/255/63, UDMA(100)
kernel: hdb: attached ide-disk driver.
kernel: hdb: host protected area => 1
kernel: hdb: 234441648 sectors (120034 MB) w/2048KiB Cache, CHS=14593/255/63, UDMA(100)
kernel: Partition check:
kernel:  hda: hda1 hda2 hda3
kernel:  hdb: hdb1 hdb2
[...]

There is no indication about scsi emulation (excepted the first line).

Question #3 : is it normal ?

Then, I put an audio CD in my drive I try to mount the filesystem :

mount -t iso9660 /dev/scd0 /cdburner

And there the system HANGS !

I open a new console and read syslog again to see what is going on:

kernel: SCSI subsystem driver Revision: 1.00
kernel: hdc: attached ide-scsi driver.
kernel: scsi0 : SCSI host adapter emulation for IDE ATAPI ddevices
kernel: scsi : aborting command due to timeout : pid 0, scssi0, channel 0, id 0, lun 0 Inquiry 00 00 00 ff 00
hdc: lost interrupt
kernel: ide-scsi: The scsi wants to send us more data than expected - discarding data
kernel: ide-scsi: [[ 12 0 0 0 ff 0 0 0 0 0 0 0 ]
kernel: ]
kernel: ide-scsi: expected 256 got 352 limit 256
kernel: hdc: lost interrupt
kernel: ide-scsi: The scsi wants to send us more data than expected - discarding data
kernel: ide-scsi: [[ 12 0 0 0 ff 0 0 0 0 0 0 0 ]
kernel: ]
kernel: ide-scsi: expected 256 got 352 limit 256
kernel: hdc: lost interrupt
kernel: ide-scsi: The scsi wants to send us more data than expected - discarding data
kernel: ide-scsi: [[ 12 0 0 0 ff 0 0 0 0 0 0 0 ]
[... endless loop]

Question #4 : how can I exit this loop without having to reboot (I'm getting tired of it?)

Then, I have a look at the loaded modules:

# lsmod
Module                  Size  Used by    Not tainted
ide-scsi               10320   2  (initializing)
ide-cd                 32352   0
scsi_mod               85504   1  (autoclean) [ide-scsi]
cdrom                  28512   0  (autoclean) [ide-cd]
[...]

They have all been loaded after the mount command.
ide-scsi remains in the "initializing" state, so I can't do anything...

Just by curiosity:

# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor:          Model:                  Rev:
  Type:   <NULL>                ANSI SCSI revision: ffffffff

Now, I don't know where to search anymore, I've spent hours looking at posts and searching in google, I've tried lots of diferent things (recompiling the kernel with differnt options, etc...).

I need help !

Thanks to all of you who can help me.

Marcos

PS one more thing : my cd burner does work (I've just tested it under windows to check... and it works !)




Reply to: