[Debburn-devel] README.Linux needs de-FUDification

Eduard Bloch edi at gmx.de
Fri Dec 29 15:36:09 CET 2006

#include <hallo.h>
* Lee Cremeans [Thu, Dec 21 2006, 04:54:11PM]:
> I was looking through README.Linux in the wodim docs on svn, and I noticed most
> of Schily's whining about Linux SCSI support is still there. I realise that
> some of it may still be problematic (namely the sg implementation in <=2.4),
> but quite a bit of it is more "these Linux kids need to eat their Solaris
> sprouts and LIKE IT!" FUD. Can someone have a look in and see what should be
> kept, and possibly change the tone so that it's less polemic? (I'd do it, but I
> know very little about the veracity of his claims, not having written any SCSI
> code for Linux yet.)

I replaced the file almost completely, see below or

Requirements of cdrkit on Linux:

 - Linux kernel 2.4 or newer 
 - Glibc 2.2 or newer
 - libcap library package is required, with development files (headers)
 - kernel headers useable with the combination of glibc and kernel, as approved
   by the distribution. Do not blindly use random kernel headers, do not
   symlink them to /usr/include/linux or /usr/include/asm*.

Notes about support on Linux:

 - Linux kernel versions between 2.6.8 and 2.6.11 are known to have invasive
   SCSI command filtering which makes the use of wodim almost inpossible or
   complicated for non-root users. Avoid those kernel versions, unless they
   have been patched to disable that filtering.

 - support of generic scsi was limited on 2.4, ie. not available directly with
   IDE/ATAPI devices. The ide-scsi driver could be used map ATAPI devices to
   SCSI ids, however this driver had other problems. See README.ATAPI for
   details. Note that there also the ATAPI:... device access method using an
   undocumented (?) backdoor, however its usage is NOT RECOMMENDED and the
   support may be removed in future versions.

 - the DMA transfer size is limited with some device controllers and the Linux
   kernel 2.6.x (2.6.19 currently) provides no method to retrieve it for
   exactly one device. Wodim scans sysfs to retrieve this information, but it
   needs to be mounted. Use the ts= option of wodim to limit the transfer size
   on problems.

Additional comments moved from the wodim.1 manpage (originaly cdrecord.1):

The sg driver on Linux has several severe bugs:

 - It cannot see if a SCSI command could not be sent at all.
 - It cannot get the SCSI status byte.
   wodim for that reason cannot report failing SCSI commands in some
 - It cannot get real DMA count of transfer. wodim cannot tell you if there is
   an DMA residual count.
 - It cannot get number of bytes valid in auto sense data. wodim cannot tell
   you if device transfers no sense data at all.
 - It fetches too few data in auto request sense (CCS/SCSI-2/SCSI-3 needs
   >= 18).

 -- Reviewed by Eduard Bloch -- 12/2006

More information about the Debburn-devel mailing list