Subject: kern/15155: Playing audio cd-roms witch scsi drives doesn't work on big-endian(?) systems
To: None <gnats-bugs@gnats.netbsd.org>
From: None <Thilo.Manske@HEH.Uni-Oldenburg.DE>
List: netbsd-bugs
Date: 01/06/2002 23:03:21
>Number: 15155
>Category: kern
>Synopsis: playing audio cd-roms witch scsi drives doesn't work on big-endian(?) systems
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Jan 06 14:04:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: Thilo Manske
>Release: NetBSD 1.5ZA
>Organization:
Dies ist Thilos Unix Signature! Viel Spass damit.
>Environment:
System: SPARCStation 20, Umax Apus 3000, IBM RS/6000 43P 7248-100
Architecture: sparc,powerpc
Machine: sparc,macppc,prep
CD-ROM drives:
TOSHIBA, XM-5401TASUN4XCD, 1036 (sparc)
MATSHITA, CD-ROM CR-506, 8S05 (macppc)
IBM, CDRM00203\134000\134000\134000\134000\134000!K, BZ26 (prep)
>Description:
Trying to play audio cdroms on any of my big-endian systems equipped with
CD-ROM drives fails but it works on all little-endian systems
(i386,acorn32). Given that I guestimate this is an endianess problem.
Here is what happens on the sparc with esp and the toschiba drive:
cdplay> info
track start duration block length type
-------------------------------------------------
1 0:02.00 4:02.70 0 18070 audio
2 4:02.70 4:45.07 18070 21232 audio
3 8:46.02 4:09.10 39302 18535 audio
4 12:53.12 4:57.18 57837 22143 audio
5 17:48.30 4:44.50 79980 21200 audio
6 22:31.05 4:03.37 101180 18112 audio
7 26:32.42 5:20.45 119292 23895 audio
8 31:51.12 2:45.10 143187 12235 audio
9 34:34.22 4:27.10 155422 19885 audio
10 38:59.32 4:42.48 175307 21048 audio
11 43:40.05 6:35.35 196355 29510 audio
170 50:13.40 - 225865 - -
[same output as on working systems]
cdplay> play
cdplay: ioctl(CDIOCPLAYTRACKS): Invalid argument
cdplay> play 1:11 2:22
cdplay: ioctl(CDIOREADTOCENTRYS): Invalid argument
cdplay> volume 100 100
cdplay: ioctl(CDIOCSETVOL): Invalid argument
And the kernel says
cd0(esp0:0:6:0): illegal request, data = 00 00 00 00 26 00 00 8c 00 00
to all three requests
(the kernel is obviously compiled without SCSIVERBOSE)
On the prep (some noname labeld IBM drive connected to siop hostadapter)
results are identical except that the kernel logs this for every request:
cd0(siop0:0:3:0): Check Condition on CDB: 0x15 10 00 00 1c 00
SENSE KEY: Illegal Request
ASC/ASCQ: Invalid Field In Parameter List
And on the macppc (matshita drive connected to mesh) I get "Device busy"
instead of "Invalid argument" and the kernel doesn't log anything.
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: