Home | History | Annotate | Download | only in block

Lines Matching full:acb

496     RawAIOCB *acb, **pacb;
515 acb = *pacb;
516 if (!acb)
518 ret = qemu_paio_error(&acb->aiocb);
521 *pacb = acb->next;
522 qemu_aio_release(acb);
526 ret = qemu_paio_return(&acb->aiocb);
527 if (ret == acb->aiocb.aio_nbytes)
535 *pacb = acb->next;
537 acb->common.cb(acb->common.opaque, ret);
538 qemu_aio_release(acb);
541 pacb = &acb->next;
608 static void raw_aio_remove(RawAIOCB *acb)
618 } else if (*pacb == acb) {
619 *pacb = acb->next;
620 qemu_aio_release(acb);
630 RawAIOCB *acb = (RawAIOCB *)blockacb;
632 ret = qemu_paio_cancel(acb->aiocb.aio_fildes, &acb->aiocb);
636 while (qemu_paio_error(&acb->aiocb) == EINPROGRESS);
639 raw_aio_remove(acb);
652 RawAIOCB *acb;
657 acb = qemu_aio_get(&raw_aio_pool, bs, cb, opaque);
658 if (!acb)
660 acb->aiocb.aio_fildes = s->fd;
661 acb->aiocb.ev_signo = SIGUSR2;
662 acb->aiocb.aio_iov = qiov->iov;
663 acb->aiocb.aio_niov = qiov->niov;
664 acb->aiocb.aio_nbytes = nb_sectors * 512;
665 acb->aiocb.aio_offset = sector_num * 512;
666 acb->aiocb.aio_flags = 0;
674 acb->aiocb.aio_flags |= QEMU_AIO_SECTOR_ALIGNED;
676 acb->next = posix_aio_state->first_aio;
677 posix_aio_state->first_aio = acb;
678 return acb;
685 RawAIOCB *acb;
687 acb = raw_aio_setup(bs, sector_num, qiov, nb_sectors, cb, opaque);
688 if (!acb)
690 if (qemu_paio_read(&acb->aiocb) < 0) {
691 raw_aio_remove(acb);
694 return &acb->common;
701 RawAIOCB *acb;
703 acb = raw_aio_setup(bs, sector_num, qiov, nb_sectors, cb, opaque);
704 if (!acb)
706 if (qemu_paio_write(&acb->aiocb) < 0) {
707 raw_aio_remove(acb);
710 return &acb->common;
1078 RawAIOCB *acb;
1083 acb = qemu_aio_get(&raw_aio_pool, bs, cb, opaque);
1084 if (!acb)
1086 acb->aiocb.aio_fildes = s->fd;
1087 acb->aiocb.ev_signo = SIGUSR2;
1088 acb->aiocb.aio_offset = 0;
1089 acb->aiocb.aio_flags = 0;
1091 acb->next = posix_aio_state->first_aio;
1092 posix_aio_state->first_aio = acb;
1094 acb->aiocb.aio_ioctl_buf = buf;
1095 acb->aiocb.aio_ioctl_cmd = req;
1096 if (qemu_paio_ioctl(&acb->aiocb) < 0) {
1097 raw_aio_remove(acb);
1101 return &acb->common;