From: Peter Jones <pmjones@gmail.com>
To: peter.schaefer@gmx.de,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [OT] SCSI command filter: Add cdparanoia to the list
Date: Fri, 27 Aug 2004 17:20:55 -0400 [thread overview]
Message-ID: <9ac707cb04082714203a7fa919@mail.gmail.com> (raw)
In-Reply-To: <412B96EF.3060900@gmx.de>
On Tue, 24 Aug 2004 21:28:47 +0200, Peter Schaefer
<peter.schaefer@gmx.de> wrote:
> Hello!
>
> Following the discus^H^H^H flamewar about cdrecord, scsi command
> filter et al, i just want to add that ripping audio CDs seems
> to be affected by the SCSI filter also. I'm not able to use
> my SCSI CDRW drive for that anymore (except being root) and
> have to resort to my (ATAPI) DVD drive.
Right you are. The commands cdparanoia uses are:
TEST_UNIT_READY
INQUIRY
MODE_SELECT
MODE_SENSE
READ_10
READ_12
READ_TOC
MODE_SELECT_10
MODE_SENSE_10
GPCMD_READ_CD
GPCMD_READ_CD_MSF
0xD4 (10-byte read on old Sony and NEC drives)
0xD4 (12-byte read on some old drives)
0xD5 (10-byte read on some old drives)
0xD8 (12-byte read on some old drives)
0xE5 (10-byte read on Creative/Acer cdd522,525,620,622)
For 0xD4/0xD5/0xD8, I'm not particularly sure which drives require
them; cdparanoia currently takes a heuristic approach to detecting the
available command set, and the data for what drives they come from
isn't in the code.
MODE_SELECT is used to set the block size for reads, as is MODE_SELECT_10.
For all but the MODE_SELECT ones, there's a patch below, but it's all
for vendor-specific commands. For the mode selects, we're either
going to need some sort of device class mechanism, or for these to be
modifiable at boot time by userland. Or, of course, startup/login
scripts can just give your user +w on the device if it knows its a CD
drive.
I'm not a big fan of having the vendor-specific commands here either,
but there's not a better way right now. I imagine this patch will be
vetoed for security concerns because of them.
===== drivers/block/scsi_ioctl.c 1.55 vs edited =====
--- 1.55/drivers/block/scsi_ioctl.c 2004-08-24 09:10:37 -04:00
+++ edited/drivers/block/scsi_ioctl.c 2004-08-27 17:15:49 -04:00
@@ -130,6 +130,10 @@
safe_for_read(GPCMD_VERIFY_10),
safe_for_read(VERIFY_16),
safe_for_read(READ_BUFFER),
+ safe_for_read(D4_READ_10_12),
+ safe_for_read(D5_READ_10),
+ safe_for_read(D8_READ_12),
+ safe_for_read(CREATIVE_READ_10),
/* Audio CD commands */
safe_for_read(GPCMD_PLAY_CD),
===== include/scsi/scsi.h 1.23 vs edited =====
--- 1.23/include/scsi/scsi.h 2004-08-14 07:38:42 -04:00
+++ edited/include/scsi/scsi.h 2004-08-27 17:15:51 -04:00
@@ -103,8 +103,12 @@
#define SEARCH_HIGH_12 0xb0
#define SEARCH_EQUAL_12 0xb1
#define SEARCH_LOW_12 0xb2
-#define READ_ELEMENT_STATUS 0xb8
#define SEND_VOLUME_TAG 0xb6
+#define READ_ELEMENT_STATUS 0xb8
+#define D4_READ_10_12 0xd4
+#define D5_READ_10 0xd5
+#define D8_READ_12 0xd8
+#define CREATIVE_READ_10 0xe5
#define WRITE_LONG_2 0xea
#define READ_16 0x88
#define WRITE_16 0x8a
prev parent reply other threads:[~2004-08-27 21:28 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-24 19:28 [OT] SCSI command filter: Add cdparanoia to the list Peter Schaefer
2004-08-27 21:20 ` Peter Jones [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9ac707cb04082714203a7fa919@mail.gmail.com \
--to=pmjones@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peter.schaefer@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox