void bdrv_detach_aio_context(BlockDriverState *bs)

{

    BdrvAioNotifier *baf;

    BdrvChild *child;



    if (!bs->drv) {

        return;

    }



    QLIST_FOREACH(baf, &bs->aio_notifiers, list) {

        baf->detach_aio_context(baf->opaque);

    }



    if (bs->drv->bdrv_detach_aio_context) {

        bs->drv->bdrv_detach_aio_context(bs);

    }

    QLIST_FOREACH(child, &bs->children, next) {

        bdrv_detach_aio_context(child->bs);

    }



    bs->aio_context = NULL;

}

void bdrv_detach_aio_context(BlockDriverState *bs)

{

    BdrvAioNotifier *baf;

    BdrvChild *child;



    if (!bs->drv) {

        return;

    }



    QLIST_FOREACH(baf, &bs->aio_notifiers, list) {

        baf->detach_aio_context(baf->opaque);

    }



    if (bs->drv->bdrv_detach_aio_context) {

        bs->drv->bdrv_detach_aio_context(bs);

    }

    QLIST_FOREACH(child, &bs->children, next) {

        bdrv_detach_aio_context(child->bs);

    }



    bs->aio_context = NULL;

}

    BdrvAioNotifier *baf;     QLIST_FOREACH(baf, &bs->aio_notifiers, list) {         baf->detach_aio_context(baf->opaque);
void FUNC_0(BlockDriverState *VAR_0)

{

    BdrvAioNotifier *baf;

    BdrvChild *child;



    if (!VAR_0->drv) {

        return;

    }



    QLIST_FOREACH(baf, &VAR_0->aio_notifiers, list) {

        baf->detach_aio_context(baf->opaque);

    }



    if (VAR_0->drv->FUNC_0) {

        VAR_0->drv->FUNC_0(VAR_0);

    }

    QLIST_FOREACH(child, &VAR_0->children, next) {

        FUNC_0(child->VAR_0);

    }



    VAR_0->aio_context = NULL;

}

void FUNC_0(BlockDriverState *VAR_0)
{ BdrvAioNotifier *baf; BdrvChild *child; if (!VAR_0->drv) { return; } QLIST_FOREACH(baf, &VAR_0->aio_notifiers, list) { baf->detach_aio_context(baf->opaque); } if (VAR_0->drv->FUNC_0) { VAR_0->drv->FUNC_0(VAR_0); } QLIST_FOREACH(child, &VAR_0->children, next) { FUNC_0(child->VAR_0); } VAR_0->aio_context = NULL; }