diff options
-rw-r--r-- | hurd/ChangeLog | 8 | ||||
-rw-r--r-- | hurd/io.defs | 35 |
2 files changed, 35 insertions, 8 deletions
diff --git a/hurd/ChangeLog b/hurd/ChangeLog index 7b586fa2..39f4dc71 100644 --- a/hurd/ChangeLog +++ b/hurd/ChangeLog @@ -1,3 +1,11 @@ +1999-09-07 Thomas Bushnell, BSG <tb@mit.edu> + + * io.defs (io_map_segment): New RPC. + (io_map): Refer to io_map_segment; label as deprecated. + (io_map_cntl, io_get_conch, io_release_conch, io_prenotify, + io_eofnotify, io_postnotify, io_readnotify, io_readsleep, + io_sigio): Label as deprecated. + Tue May 11 13:38:50 1999 Thomas Bushnell, BSG <tb@mit.edu> * startup.defs: Doc fixes. diff --git a/hurd/io.defs b/hurd/io.defs index 75a8f58b..92ce0fa2 100644 --- a/hurd/io.defs +++ b/hurd/io.defs @@ -205,14 +205,7 @@ routine io_server_version ( /* Definitions for mapped io */ -/* Return objects mapping the data underlying this memory object. If - the object can be read then memobjrd will be provided; if the - object can be written then memobjwr will be provided. For objects - where read data and write data are the same, these objects will be - equal, otherwise they will be disjoint. Servers are permitted to - implement io_map but not io_map_cntl. Some objects do not provide - mapping; they will set none of the ports and return an error. Such - objects can still be accessed by io_read and io_write. */ +/* This RPC is a deprecated alias for io_map_segment with an INDEX of zero. */ routine io_map ( io_object: io_t; RPT @@ -227,6 +220,7 @@ routine io_map ( This call may be unimplemented by some servers; they will return EOPNOTSUPP. */ +/* This call is deprecated. */ routine io_map_cntl ( io_object: io_t; RPT @@ -236,6 +230,7 @@ routine io_map_cntl ( should call this function. The server will endeavor to have USER_HAS_CONCH when this returns, but users should call io_get_it in a loop for safety. */ +/* This call is deprecated. */ routine io_get_conch ( io_object: io_t RPTLAST); @@ -248,6 +243,7 @@ routine io_get_conch ( to be updated, the user should call io_release_conch. Upon return, the conch status might be either USER_COULD_HAVE_CONCH or USER_HAS_NOT_CONCH. */ +/* This call is deprecated. */ routine io_release_conch ( io_object: io_t RPTLAST); @@ -257,6 +253,7 @@ routine io_release_conch ( example, to clear the eof condition after it is read once. The routine should be called while the user has the conch. The user will keep it upon return. */ +/* This call is deprecated. */ routine io_eofnotify ( io_object: io_t RPTLAST); @@ -266,6 +263,7 @@ routine io_eofnotify ( size will now permit the write, so it should be re-checked. The routine should be called while the user has the conch. The user will keep it upon return. */ +/* This call is deprecated. */ routine io_prenotify ( io_object: io_t; RPT @@ -276,6 +274,7 @@ routine io_prenotify ( user needs to call io_postnotify. The routine should be called while the user has the conch. The user will keep it upon return. */ +/* This call is deprecated. */ routine io_postnotify ( io_object: io_t; RPT @@ -285,17 +284,20 @@ routine io_postnotify ( /* After moving rd_file_pointer past readnotify_size, the user should call this routine, while holding the conch. The user will keep the conch upon return. */ +/* This call is deprecated. */ routine io_readnotify ( io_object: io_t RPTLAST); /* This routine sleeps until the read_size is increased. The routine should be called while the user has the conch. The user will keep it upon return. */ +/* This call is deprecated. */ routine io_readsleep ( io_object: io_t RPTLAST); /* The shared user has just done some IO, and a signal needs to be sent for async users. */ +/* This call is deprecated. */ routine io_sigio ( io_object: io_t RPTLAST); @@ -323,3 +325,20 @@ routine io_identity ( routine io_revoke ( io_object: io_t RPTLAST); +/* Return objects mapping a portion of the data underlying this memory + object. Objects in size through 2^64 are supported. Each is divided + into 2^32 segments, each of which is 2^32 bytes long. INDEX selects + the segment in question (the high 32 bits). + + If the object can be read then memobjrd will be provided; if the + object can be written then memobjwr will be provided. For objects + where read data and write data are the same, these objects will be + equal, otherwise they will be disjoint. Some objects do not + provide mapping; they will set none of the ports and return an + error. Such objects can still be accessed by io_read and io_write. */ +routine io_map_segment ( + io_object: io_t; + RPT + index: int; + out memobjrd: mach_port_send_t; + out memobjwt: mach_port_send_t); |