Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (W-Z)
Guardian Procedure Calls Reference Manual—522629-013
16-38
WRITEUPDATEUNLOCK[X] Procedures
record does not exist, the call to WRITEUPDATEUNLOCK[X] is rejected with file-
system error 11.
See the “Considerations” for WRITEUPDATE[X].
•
Invalid write operations to queue files
DP2 rejects WRITEUPDATEUNLOCK[X] operations with an error 2.
Considerations for WRITEUPDATEUNLOCKX Only
•
The buffer and count transferred may be in the user stack or in an extended data
segment. The buffer and count transferred cannot be in the user code space.
•
If the buffer or count transferred is in a selectable extended data segment, the
segment must be in use at the time of the call. Flat segments allocated by a
process are always accessible to the process.
•
If the file is opened for nowait I/O, and the buffer is in an extended data segment,
you cannot deallocate or reduce the size of the extended data segment before the
I/O completes with a call to AWAITIOX or is canceled by a call to CANCEL or
CANCELREQ.
•
If the file is opened for nowait I/O, you must not modify the buffer before the I/O
completes with a call to AWAITIOX. This also applies to other processes that may
be sharing the segment. It is the application’s responsibility to ensure this.
•
If the file is opened for nowait I/O, and the I/O has been initiated with these
routines, the I/O must be completed with a call to AWAITIOX (not AWAITIO).
•
If the file is opened for nowait I/O, the extended segment containing the buffer
need not be in use at the time of the call to AWAITIOX.
•
Nowait I/O initiated with these routines may be canceled with a call to CANCEL or
CANCELREQ. The I/O is canceled if the file is closed before the I/O completes or
AWAITIOX is called with a positive time limit and specific file number and the
request times out.
•
If the extended address of the buffer is odd, bounds checking rounds the address
to the next lower word boundary and checks an extra byte as well. The odd
address is used for the transfer.
Errors for WRITEUPDATEUNLOCKX Only
In addition to the errors returned from the WRITEUPDATEUNLOCK procedure, file-
system error 22 is returned when:
•
The address of a parameter is extended, but no segment is in use at the time of
the call or the segment in use is invalid.
•
The address of a parameter is extended, but it is an absolute address and the
caller is not privileged.