altering read() system call behavior (152 Views)
Occasional Contributor
Posts: 10
Registered: ‎11-14-2013
Message 1 of 1 (152 Views)

altering read() system call behavior



I've been tasked with porting existing Linux functionality to our HP-UX client.  A previous question, passthru devices, was answered quickly so I thought I'd ask another.


I've been pouring over the web and HP-UX documentation, but have been unable to determine if what the Linux client is doing is possible on HP-UX.  Scenario:


Multiple scsi commands can be issued to read from the SCSI attached device, and I need to guarantee that the read order of the packets returned is sequential, regardless of order returned.


On Linux, there is an ioctl() call


ioctl(fd, SG_SET_FORCE_PACK_ID, &one)


that according to /usr/include/scsi/sg.h file does:


"When SG_SET_FORCE_PACK_ID set to 1, pack_id is input to read() which tries to fetch a packet with a matching

 pack_id, waits, or returns EAGAIN.  If pack_id is -1 then read oldest waiting.  When ...FORCE_PACK_ID set to 0 then

 pack_id ignored by read() and oldest readable fetched."


Is there something similar within HP-UX?



The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation.