static void blkdebug_debug_event(BlockDriverState *bs, BlkDebugEvent event)

{

    BDRVBlkdebugState *s = bs->opaque;

    struct BlkdebugRule *rule;

    bool injected;



    assert((int)event >= 0 && event < BLKDBG_EVENT_MAX);



    injected = false;

    s->new_state = s->state;

    QLIST_FOREACH(rule, &s->rules[event], next) {

        injected = process_rule(bs, rule, injected);

    }

    s->state = s->new_state;

}

static void blkdebug_debug_event(BlockDriverState *bs, BlkDebugEvent event)

{

    BDRVBlkdebugState *s = bs->opaque;

    struct BlkdebugRule *rule;

    bool injected;



    assert((int)event >= 0 && event < BLKDBG_EVENT_MAX);



    injected = false;

    s->new_state = s->state;

    QLIST_FOREACH(rule, &s->rules[event], next) {

        injected = process_rule(bs, rule, injected);

    }

    s->state = s->new_state;

}

static void FUNC_0(BlockDriverState *VAR_0, BlkDebugEvent VAR_1)

{

    BDRVBlkdebugState *s = VAR_0->opaque;

    struct BlkdebugRule *VAR_2;

    bool injected;



    assert((int)VAR_1 >= 0 && VAR_1 < BLKDBG_EVENT_MAX);



    injected = false;

    s->new_state = s->state;

    QLIST_FOREACH(VAR_2, &s->rules[VAR_1], next) {

        injected = process_rule(VAR_0, VAR_2, injected);

    }

    s->state = s->new_state;

}

static void FUNC_0(BlockDriverState *VAR_0, BlkDebugEvent VAR_1)
{ BDRVBlkdebugState *s = VAR_0->opaque; struct BlkdebugRule *VAR_2; bool injected; assert((int)VAR_1 >= 0 && VAR_1 < BLKDBG_EVENT_MAX); injected = false; s->new_state = s->state; QLIST_FOREACH(VAR_2, &s->rules[VAR_1], next) { injected = process_rule(VAR_0, VAR_2, injected); } s->state = s->new_state; }