User compiled programs that access the /dev/sg? interface
(like cdrecord) generate scsi-command errors.
This is due to a bug in the package glibc-devel that comes
with Red Hat Linux 6.0. The directory /usr/include/scsi
should be a symbolic link to /usr/src/linux/include/scsi to
warrant consistency of the kernel's sg-driver-interface
version with the headers used by the compiler.
(Re)move the directory /usr/include/scsi and create a
symbolic link from
/usr/include/scsi > /usr/src/linux/include/scsi
# cd /usr/include
# mv scsi scsi.orig
# ln -s ../../src/linux/include/scsi scsi
Now recompile the affected program.
The glibc headers provide a cross-system generic scsi interface for
use by high-level programs. Applications like cdrecord should look
instead directly into the kernel headers, since they need hard data
that is highly architecture and OS dependent.