Lines Matching refs:aiocb
174 static void do_munge_aiocb( struct aiocb *my_aiocbp, struct user_aiocb *the_user_aiocbp );
251 struct aiocb aiocb32;
266 /* the aiocb causes unspecified results. We return EBADF in */
483 * held for async IO call associated with the given aiocb pointer.
712 (aiocbp == USER_ADDR_NULL && fd == entryp->aiocb.aio_fildes) ) {
775 (aiocbp == USER_ADDR_NULL && fd == entryp->aiocb.aio_fildes) ) {
808 (aiocbp == USER_ADDR_NULL && fd == entryp->aiocb.aio_fildes) ) {
834 (aiocbp == USER_ADDR_NULL && fd == entryp->aiocb.aio_fildes) ) {
936 /* copyin our aiocb pointers from list */
1054 * The caller gets error and return status for each aiocb in the list via aio_error
1111 /* copyin our aiocb pointers from list */
1448 entryp->aiocb.aio_fildes == my_entryp->aiocb.aio_fildes ) {
1485 struct aiocb aiocb32;
1489 do_munge_aiocb( &aiocb32, &entryp->aiocb );
1491 result = copyin( aiocbp, &entryp->aiocb, sizeof(entryp->aiocb) );
1498 /* do some more validation on the aiocb and embedded file descriptor */
1528 * request with the aiocb pointer passed in on the aio_fsync call to
1591 struct aiocb aiocb32;
1595 do_munge_aiocb( &aiocb32, &entryp->aiocb );
1597 result = copyin( aiocbp, &entryp->aiocb, sizeof(entryp->aiocb) );
1606 if ( entryp->aiocb.aio_lio_opcode == LIO_NOP ) {
1627 entryp->aiocb.aio_sigevent.sigev_notify = sigevent32.sigev_notify;
1628 entryp->aiocb.aio_sigevent.sigev_signo = sigevent32.sigev_signo;
1629 entryp->aiocb.aio_sigevent.sigev_value.size_equivalent.sival_int =
1631 entryp->aiocb.aio_sigevent.sigev_notify_function =
1633 entryp->aiocb.aio_sigevent.sigev_notify_attributes =
1637 result = copyin( sigp, &entryp->aiocb.aio_sigevent, sizeof(entryp->aiocb.aio_sigevent) );
1645 /* do some more validation on the aiocb and embedded file descriptor */
1680 if ( entryp->aiocb.aio_fildes == my_entryp->aiocb.aio_fildes ) {
1687 entryp->aiocb.aio_fildes == my_entryp->aiocb.aio_fildes ) {
1726 struct aiocb aiocb32;
1730 do_munge_aiocb( &aiocb32, &entryp->aiocb );
1732 result = copyin( aiocbp, &entryp->aiocb, sizeof(entryp->aiocb) );
1741 if ( entryp->aiocb.aio_lio_opcode == LIO_NOP ) {
1785 /* aio_validate - validate the aiocb passed in by one of the aio syscalls.
1798 if ( entryp->aiocb.aio_lio_opcode == LIO_READ )
1800 else if ( entryp->aiocb.aio_lio_opcode == LIO_WRITE )
1802 else if ( entryp->aiocb.aio_lio_opcode == LIO_NOP )
1815 if ( entryp->aiocb.aio_nbytes > INT_MAX ||
1816 entryp->aiocb.aio_buf == USER_ADDR_NULL ||
1817 entryp->aiocb.aio_offset < 0 )
1821 /* validate aiocb.aio_sigevent. at this point we only support sigev_notify
1825 if ( entryp->aiocb.aio_sigevent.sigev_notify == SIGEV_SIGNAL ) {
1828 signum = entryp->aiocb.aio_sigevent.sigev_signo;
1833 else if ( entryp->aiocb.aio_sigevent.sigev_notify != SIGEV_NONE )
1841 result = fp_lookup( entryp->procp, entryp->aiocb.aio_fildes, &fp , 1);
1853 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp , 1);
1932 if ( entryp->aiocb.aio_sigevent.sigev_notify == SIGEV_SIGNAL &&
1943 entryp->aiocb.aio_sigevent.sigev_signo, 0, 0 );
1945 psignal( entryp->procp, entryp->aiocb.aio_sigevent.sigev_signo );
2046 if ( (error = fp_lookup(entryp->procp, entryp->aiocb.aio_fildes, &fp , 0)) )
2049 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2061 entryp->aiocb.aio_buf,
2062 entryp->aiocb.aio_nbytes,
2063 entryp->aiocb.aio_offset, FOF_OFFSET,
2065 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2082 if ( (error = fp_lookup(entryp->procp, entryp->aiocb.aio_fildes, &fp , 0)) )
2085 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2099 entryp->aiocb.aio_buf,
2100 entryp->aiocb.aio_nbytes,
2101 entryp->aiocb.aio_offset,
2105 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2144 error = fp_getfvp( entryp->procp, entryp->aiocb.aio_fildes, &fp, &vp);
2147 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2158 fp_drop(entryp->procp, entryp->aiocb.aio_fildes, fp, 0);
2288 * In the case of an aiocb from a
2291 * aiocb (in our case that is a user_aiocb)
2294 do_munge_aiocb( struct aiocb *my_aiocbp, struct user_aiocb *the_user_aiocbp )