static void nbd_coroutine_end(BlockDriverState *bs,

                              NBDRequest *request)

{

    NBDClientSession *s = nbd_get_client_session(bs);

    int i = HANDLE_TO_INDEX(s, request->handle);



    s->recv_coroutine[i] = NULL;

    s->in_flight--;

    qemu_co_queue_next(&s->free_sema);



    /* Kick the read_reply_co to get the next reply.  */

    if (s->read_reply_co) {

        aio_co_wake(s->read_reply_co);

    }

}

static void nbd_coroutine_end(BlockDriverState *bs,

                              NBDRequest *request)

{

    NBDClientSession *s = nbd_get_client_session(bs);

    int i = HANDLE_TO_INDEX(s, request->handle);



    s->recv_coroutine[i] = NULL;

    s->in_flight--;

    qemu_co_queue_next(&s->free_sema);



    

    if (s->read_reply_co) {

        aio_co_wake(s->read_reply_co);

    }

}

    s->in_flight--;     qemu_co_queue_next(&s->free_sema);
static void FUNC_0(BlockDriverState *VAR_0,

                              NBDRequest *VAR_1)

{

    NBDClientSession *s = nbd_get_client_session(VAR_0);

    int VAR_2 = HANDLE_TO_INDEX(s, VAR_1->handle);



    s->recv_coroutine[VAR_2] = NULL;

    s->in_flight--;

    qemu_co_queue_next(&s->free_sema);



    

    if (s->read_reply_co) {

        aio_co_wake(s->read_reply_co);

    }

}

static void FUNC_0(BlockDriverState *VAR_0,
NBDRequest *VAR_1)
{ NBDClientSession *s = nbd_get_client_session(VAR_0); int VAR_2 = HANDLE_TO_INDEX(s, VAR_1->handle); s->recv_coroutine[VAR_2] = NULL; s->in_flight--; qemu_co_queue_next(&s->free_sema); if (s->read_reply_co) { aio_co_wake(s->read_reply_co); } }