#1063765 open-iscsi: Optical drive (CD/DVD/Blu-ray), connected via USB, passed-through SCSI, distributed via iSCSI, error messages in dmesg every second, slow average read speed at 2 MB/s, normal speed with WIN iSCSI

Package:
open-iscsi
Source:
open-iscsi
Description:
iSCSI initiator tools
Submitter:
Felix
Date:
2026-08-01 13:55:01 UTC
Severity:
normal
#1063765#5
Date:
2024-02-12 13:21:42 UTC
From:
To:
   * What led up to the situation?

Hello everyone,

I hope I am writing to the right people and describing the problem reasonably well, this is my first bug report. I have been trying to find a solution at program level for two months now, which is unfortunately proving difficult. I think that the error can be narrowed down to the kernel, there are indications of this, but I can't prove it with 100% certainty as I don't understand the C language myself.

Let me break down the current structure:
optical drive---> via USB3---> ESXi8 host---> pass-through to VM---> Debian 12 with kernel 6.1.0 and self-compiled kernel 6.7.4---> tgt iSCSI target---> SCSI pass-through---> Ethernet/ WiFi with TCP---> Debian 12 Stable or Testing with open-iscsi Initiator---> Programs like rsync

(drive already removed from enclosure and connected to physical PC with mini-SATA, tgt set up, same error pattern)

Problem description:
I search for the target via iscsiadm and log in. The optical drive is recognized and initialized, see dmesg:

[ 6204.436754] scsi host0: iSCSI Initiator over TCP/IP
[ 6204.452976] scsi 0:0:0:0: RAID              IET      Controller       0001 PQ: 0 ANSI: 5
[ 6204.483159] scsi 0:0:0:0: Attached scsi generic sg0 type 12
[ 6204.486988] scsi 0:0:0:1: CD-ROM            NECVMWar VMware SATA CD00 1.00 PQ: 0 ANSI: 5
[ 6204.534459] sr 0:0:0:1: [sr0] scsi-1 drive
[ 6204.598759] sr 0:0:0:1: Attached scsi CD-ROM sr0
[ 6204.598905] sr 0:0:0:1: Attached scsi generic sg1 type 5
[ 6208.550055] sr 0:0:0:1: [sr0] tag#96 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[ 6208.550064] sr 0:0:0:1: [sr0] tag#96 Sense Key : Hardware Error [current]
[ 6208.550067] sr 0:0:0:1: [sr0] tag#96 Add. Sense: Internal target failure
[ 6208.550071] sr 0:0:0:1: [sr0] tag#96 CDB: Read(10) 28 00 00 00 00 82 00 00 7e 00
[ 6208.550073] critical target error, dev sr0, sector 520 op 0x0:(READ) flags 0x80700 phys_seg 63 prio class 2
[ 6208.763308] sr 0:0:0:1: [sr0] tag#96 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[ 6208.763316] sr 0:0:0:1: [sr0] tag#96 Sense Key : Hardware Error [current]
[ 6208.763319] sr 0:0:0:1: [sr0] tag#96 Add. Sense: Internal target failure
[ 6208.763322] sr 0:0:0:1: [sr0] tag#96 CDB: Read(10) 28 00 01 65 d3 00 00 00 80 00
[ 6208.763324] critical target error, dev sr0, sector 93801472 op 0x0:(READ) flags 0x80700 phys_seg 64 prio class 2
[ 6212.108642] sr 0:0:0:1: [sr0] tag#98 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[ 6212.108650] sr 0:0:0:1: [sr0] tag#98 Sense Key : Hardware Error [current]
[ 6212.108653] sr 0:0:0:1: [sr0] tag#98 Add. Sense: Internal target failure
[ 6212.108656] sr 0:0:0:1: [sr0] tag#98 CDB: Read(10) 28 00 01 65 d3 80 00 00 80 00
[ 6212.108658] critical target error, dev sr0, sector 93801984 op 0x0:(READ) flags 0x80700 phys_seg 64 prio class 2

At first it seems as if it is recognized and initialized without any problems, about 3-5 seconds after connection the first error messages are thrown.
For example, when I run rsync -av -P on the mounted drive, dmesg is flooded with this kind of error message and the transfer rate is 2.0 - 2.5 MB/s. This behavior does NOT continue to occur when I use dd if=/dev/sr0 of=/test.img to read the disc bit by bit. To my surprise, the disc is then read at the full speed of the drive (between 20.0 and 24.0 MB/s).
In principle, this is also the complete error pattern, with open-iscsi as the initiator.

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

I have now run some tests to find a solution at program level, which has not been found.
Among other things, I have counter-tested with Windows (10/11/Server 2022) and the initiator used there can establish a connection with default settings and mount the drive into the system. Completely error-free. The programs there can read it at full speed.

I have also tested another Debian-based distribution (virtualized), Ubuntu 22.04, which also has this error.I have also tested various kernel versions, namely kernel 6.7.4 (self-compiled), 6.6.13, 6.5.0, 4.19.306 and 4.0.0 (Debian Stretch Alpha).
This error occurs in all kernel versions mentioned. In the first four, exactly the same. With kernel 4.0.0 the drive is initialized in dmesg apparently without errors, only when I start a read operation (e.g. with rsync) is dmesg flooded.
I also read the disc on the VM on which tgt is running with dd 1:1 and wrote it to a hard disk. I then entered the hard disk in targets.conf using SCSI passthrough and mounted it on the client with open-iscsi-initiator.
Now I have used various programs to read out this created image on the client and copied it to file level. This worked without any problems, neither in dmesg nor with the speed, which means for me that the error is not generally due to open-iscsi.
On Friday I bought a brand new optical drive which also works fine on Windows to rule out the error of an unlikely hardware defect.

IMPORTANT NOTE: Both drives work flawlessly when I connect them to my Linux clients via USB(2/3) OR pass them through to a guest VM via ESXi8.

   * What was the outcome of this action?

I expected the drive to pass through the local network normally, i.e. without errors.

   * What outcome did you expect instead?

dmesg is flooded with error messages, the read speed is stuck at 2.0 - 2.5 MB/s.

#1063765#10
Date:
2026-08-01 13:53:57 UTC
From:
To:
Control: reassign -1 tgt

Okay, but this is not a bug in open-iscsi, which is not involved
with the actual iSCSI data plane. This is either a bug in your iSCSI
target or the kernel.

You said you are using `tgt`, so I'm reassigning there for now.
Could also try LIO instead and see if that works better.

Best,
Chris