- Timestamp:
- 2011-04-06T20:19:04Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 55132b8, b910455
- Parents:
- b946bf83
- Location:
- uspace/lib/c
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/async.c
rb946bf83 rf6bffee 1572 1572 * @param dst Address of the beginning of the destination buffer. 1573 1573 * @param size Size of the destination buffer. 1574 * @param flags Flags to control the data transfer. 1574 1575 * 1575 1576 * @return Zero on success or a negative error code from errno.h. 1576 1577 * 1577 1578 */ 1578 int async_data_read_start(int phoneid, void *dst, size_t size) 1579 { 1580 return async_req_2_0(phoneid, IPC_M_DATA_READ, (sysarg_t) dst, 1581 (sysarg_t) size); 1579 int 1580 async_data_read_start_flexible(int phoneid, void *dst, size_t size, int flags) 1581 { 1582 return async_req_3_0(phoneid, IPC_M_DATA_READ, (sysarg_t) dst, 1583 (sysarg_t) size, (sysarg_t) flags); 1582 1584 } 1583 1585 … … 1669 1671 * @param src Address of the beginning of the source buffer. 1670 1672 * @param size Size of the source buffer. 1673 * @param flags Flags to control the data transfer. 1671 1674 * 1672 1675 * @return Zero on success or a negative error code from errno.h. 1673 1676 * 1674 1677 */ 1675 int async_data_write_start(int phoneid, const void *src, size_t size) 1676 { 1677 return async_req_2_0(phoneid, IPC_M_DATA_WRITE, (sysarg_t) src, 1678 (sysarg_t) size); 1678 int 1679 async_data_write_start_flexible(int phoneid, const void *src, size_t size, 1680 int flags) 1681 { 1682 return async_req_3_0(phoneid, IPC_M_DATA_WRITE, (sysarg_t) src, 1683 (sysarg_t) size, (sysarg_t) flags); 1679 1684 } 1680 1685 -
uspace/lib/c/generic/vfs/vfs.c
rb946bf83 rf6bffee 378 378 379 379 req = async_send_1(vfs_phone, VFS_IN_READ, fildes, &answer); 380 rc = async_data_read_start(vfs_phone, (void *)buf, nbyte); 380 rc = async_data_read_start_flexible(vfs_phone, (void *) buf, nbyte, 381 IPC_XF_RESTRICT); 381 382 if (rc != EOK) { 382 383 vfs_exchange_end(vfs_phone); … … 407 408 408 409 req = async_send_1(vfs_phone, VFS_IN_WRITE, fildes, &answer); 409 rc = async_data_write_start(vfs_phone, (void *)buf, nbyte); 410 rc = async_data_write_start_flexible(vfs_phone, (void *) buf, nbyte, 411 IPC_XF_RESTRICT); 410 412 if (rc != EOK) { 411 413 vfs_exchange_end(vfs_phone); -
uspace/lib/c/include/async.h
rb946bf83 rf6bffee 340 340 (arg4), (answer)) 341 341 342 extern int async_data_read_start(int, void *, size_t); 342 #define async_data_read_start(p, buf, len) \ 343 async_data_read_start_flexible((p), (buf), (len), IPC_XF_NONE) 344 345 extern int async_data_read_start_flexible(int, void *, size_t, int); 343 346 extern bool async_data_read_receive(ipc_callid_t *, size_t *); 344 347 extern int async_data_read_finalize(ipc_callid_t, const void *, size_t); … … 379 382 (arg4), (answer)) 380 383 381 extern int async_data_write_start(int, const void *, size_t); 384 #define async_data_write_start(p, buf, len) \ 385 async_data_write_start_flexible((p), (buf), (len), IPC_XF_NONE) 386 387 extern int async_data_write_start_flexible(int, const void *, size_t, int); 382 388 extern bool async_data_write_receive(ipc_callid_t *, size_t *); 383 389 extern int async_data_write_finalize(ipc_callid_t, void *, size_t);
Note:
See TracChangeset
for help on using the changeset viewer.