static void coroutine_delete(Coroutine *co)

{

    if (CONFIG_COROUTINE_POOL) {

        qemu_mutex_lock(&pool_lock);

        if (pool_size < pool_max_size) {

            QSLIST_INSERT_HEAD(&pool, co, pool_next);

            co->caller = NULL;

            pool_size++;

            qemu_mutex_unlock(&pool_lock);

            return;

        }

        qemu_mutex_unlock(&pool_lock);

    }



    qemu_coroutine_delete(co);

}

static void coroutine_delete(Coroutine *co)

{

    if (CONFIG_COROUTINE_POOL) {

        qemu_mutex_lock(&pool_lock);

        if (pool_size < pool_max_size) {

            QSLIST_INSERT_HEAD(&pool, co, pool_next);

            co->caller = NULL;

            pool_size++;

            qemu_mutex_unlock(&pool_lock);

            return;

        }

        qemu_mutex_unlock(&pool_lock);

    }



    qemu_coroutine_delete(co);

}

static void FUNC_0(Coroutine *VAR_0)

{

    if (CONFIG_COROUTINE_POOL) {

        qemu_mutex_lock(&pool_lock);

        if (pool_size < pool_max_size) {

            QSLIST_INSERT_HEAD(&pool, VAR_0, pool_next);

            VAR_0->caller = NULL;

            pool_size++;

            qemu_mutex_unlock(&pool_lock);

            return;

        }

        qemu_mutex_unlock(&pool_lock);

    }



    qemu_coroutine_delete(VAR_0);

}

static void FUNC_0(Coroutine *VAR_0)
{ if (CONFIG_COROUTINE_POOL) { qemu_mutex_lock(&pool_lock); if (pool_size < pool_max_size) { QSLIST_INSERT_HEAD(&pool, VAR_0, pool_next); VAR_0->caller = NULL; pool_size++; qemu_mutex_unlock(&pool_lock); return; } qemu_mutex_unlock(&pool_lock); } qemu_coroutine_delete(VAR_0); }