Lines Matching defs:lio_context
1465 aio_lio_context *lio_context;
1472 lio_context = NULL;
1496 MALLOC( lio_context, aio_lio_context*, sizeof(aio_lio_context), M_TEMP, M_WAITOK );
1497 if ( lio_context == NULL ) {
1506 bzero(lio_context, sizeof(aio_lio_context));
1527 lio_context->io_issued = uap->nent;
1528 lio_context->io_waiter = uap->mode == LIO_WAIT ? 1 : 0; /* Should it be freed by last AIO */
1539 lio_context->io_issued--;
1545 * We use lio_context to mark IO requests for delayed completion
1550 * We use the address of the lio_context for this, since it is
1553 result = lio_create_entry( p, my_aiocbp, lio_context, (entryp_listp + i) );
1561 lio_context->io_issued--;
1582 lio_context->io_issued--;
1605 while (lio_context->io_completed < lio_context->io_issued) {
1606 result = msleep(lio_context, aio_proc_mutex(p), PCATCH | PRIBIO | PSPIN, "lio_listio", 0);
1611 lio_context->io_waiter = 0;
1617 if (lio_context->io_completed == lio_context->io_issued) {
1639 if ((lio_context != NULL) && ((lio_context->io_issued == 0) || (free_context == TRUE))) {
1640 free_lio_context(lio_context);
2204 aio_lio_context *lio_context = NULL;
2207 lio_context = (aio_lio_context *)entryp->group_tag;
2209 if (lio_context != NULL) {
2214 lio_context->io_completed++;
2217 if (lio_context->io_issued == lio_context->io_completed) {
2221 waiter = lio_context->io_waiter;
2226 wakeup(lio_context);
2236 if (lio_context == NULL) {
2332 free_lio_context (lio_context);