static int do_req(int sockfd, AioContext *aio_context, SheepdogReq *hdr,

                  void *data, unsigned int *wlen, unsigned int *rlen)

{

    Coroutine *co;

    SheepdogReqCo srco = {

        .sockfd = sockfd,

        .aio_context = aio_context,

        .hdr = hdr,

        .data = data,

        .wlen = wlen,

        .rlen = rlen,

        .ret = 0,

        .finished = false,

    };



    if (qemu_in_coroutine()) {

        do_co_req(&srco);

    } else {

        co = qemu_coroutine_create(do_co_req);

        qemu_coroutine_enter(co, &srco);

        while (!srco.finished) {

            aio_poll(aio_context, true);

        }

    }



    return srco.ret;

}

static int do_req(int sockfd, AioContext *aio_context, SheepdogReq *hdr,

                  void *data, unsigned int *wlen, unsigned int *rlen)

{

    Coroutine *co;

    SheepdogReqCo srco = {

        .sockfd = sockfd,

        .aio_context = aio_context,

        .hdr = hdr,

        .data = data,

        .wlen = wlen,

        .rlen = rlen,

        .ret = 0,

        .finished = false,

    };



    if (qemu_in_coroutine()) {

        do_co_req(&srco);

    } else {

        co = qemu_coroutine_create(do_co_req);

        qemu_coroutine_enter(co, &srco);

        while (!srco.finished) {

            aio_poll(aio_context, true);

        }

    }



    return srco.ret;

}

        co = qemu_coroutine_create(do_co_req);         qemu_coroutine_enter(co, &srco);
static int FUNC_0(int VAR_0, AioContext *VAR_1, SheepdogReq *VAR_2,

                  void *VAR_3, unsigned int *VAR_4, unsigned int *VAR_5)

{

    Coroutine *co;

    SheepdogReqCo srco = {

        .VAR_0 = VAR_0,

        .VAR_1 = VAR_1,

        .VAR_2 = VAR_2,

        .VAR_3 = VAR_3,

        .VAR_4 = VAR_4,

        .VAR_5 = VAR_5,

        .ret = 0,

        .finished = false,

    };



    if (qemu_in_coroutine()) {

        do_co_req(&srco);

    } else {

        co = qemu_coroutine_create(do_co_req);

        qemu_coroutine_enter(co, &srco);

        while (!srco.finished) {

            aio_poll(VAR_1, true);

        }

    }



    return srco.ret;

}

static int FUNC_0(int VAR_0, AioContext *VAR_1, SheepdogReq *VAR_2,
void *VAR_3, unsigned int *VAR_4, unsigned int *VAR_5)
{ Coroutine *co; SheepdogReqCo srco = { .VAR_0 = VAR_0,
.VAR_1 = VAR_1,
.VAR_2 = VAR_2,
.VAR_3 = VAR_3,
.VAR_4 = VAR_4,
.VAR_5 = VAR_5,
.ret = 0,
.finished = false,
}; if (qemu_in_coroutine()) { do_co_req(&srco); } else { co = qemu_coroutine_create(do_co_req); qemu_coroutine_enter(co, &srco); while (!srco.finished) { aio_poll(VAR_1, true); } } return srco.ret; }