I have wrtitten a small C program that issues USCSICMD ioctl call to the tape devices attached on solaris sparc 10. I was able to get the required information from all SCSI tape devices attached using the utility. But, whenever it is run on FC attached tape drives , the program returns an error saying "Inappropriate ioctl for device".
bash-2.05# inquiry /devices/pci@1f,4000/fibre-channel@2/fp@0,0:devctl
inquiry: /devices/pci@1f,4000/fibre-channel@2/fp@0,0:devctl: scsi inquiry failed: Inappropriate ioctl for device
Is it possible to make an USCSICMD ioctl on FC attached tape devices ?. Can someone please provide an example if possible.
I don't see why not, I use the same ioctl to talk to fc-attached disk drives, and enclosure devices. I have used the same ioctl to also talk to scsi-attached tapes. Maybe this is a bug that is specific to your FC device driver or firmware, did you investigate with the HBA vendor and make sure everything is current?
It looks to me your inquiry command is issuing ioctl to fp target device instead of st driver's one. I would recommend command like "luxadm inq /dev/rmt/0n" command be run to see if luxadm command can show the inquiry data.