Messages in this thread | | | Subject | Re: the joy of scsi headers and glibc... | From | Andreas Jaeger <> | Date | 07 Nov 1999 17:46:14 +0100 |
| |
>>>>> Douglas Gilbert writes:
>> > Now, the question that I have is... What in the name of god am I to do? >> Well, roughly speaking glibc and Debian and recent RedHat and recent SuSE >> are right, and the author of scsi-generic.txt is mistaken. >> >> [One does not recompile all one's software when upgrading kernels. >> Apparently ordinary software is independent of the includes used. >> In case the includes really do matter, one gives -I<some-linux-include-dir> >> to get the includes from one particular kernel version (and then knows >> that the program obtained that way may break when another kernel is used).>] >> >> Note that including linux kernel includes is meaningful only to get >> kernel interface definitions. In particular, if one only needs constants >> defined in the SCSI standard then a private include file is just as well >> as <linux/../scsi/scsi.h>.
Douglas> If a Linux header file in the /usr/src/linux/include area Douglas> does not want the users to access a section programmatically Douglas> then it is surrounded by #ifdef __KERNEL__ ... #endif. Note Douglas> that there are 2 scsi.h files in the Linux kernel: Douglas> /usr/src/linux/include/scsi/scsi.h [for public consumption] Douglas> /usr/src/linux/drivers/scsi/scsi.h [for internal consumption]
Douglas> The /usr/src/linux/include/scsi directory contains 4 files (not Douglas> 1 or 2 as the GNU glibc library seems to think). They are: Douglas> scsi.h Douglas> scsi_ioctl.h Douglas> scsicam.h Douglas> sg.h
scsi_ioctl.h contains a few constants - you're right they should be added to glibc. I'll prepare a patch for glibc.
But AFAIU scsicam.h doesn't contain anything that it's usable from userland.
Douglas> For instance one needs scsi_ioctl.h if one wishes to use Douglas> the SCSI_IOCTL_SEND_COMMAND ioctl(). Also note that these Douglas> files are (slightly) different between Linux kernel 2.2.13 Douglas> and 2.3.25 . Only sg.h is different.
Andreas -- Andreas Jaeger SuSE Labs aj@suse.de private aj@arthur.rhein-neckar.de
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |