mirror of https://github.com/xemu-project/xemu.git
block: New bdrv_next()
This is a more flexible alternative to bdrv_iterate(). Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
ac59eb95f3
commit
2f399b0aad
8
block.c
8
block.c
|
@ -1330,6 +1330,14 @@ BlockDriverState *bdrv_find(const char *name)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
BlockDriverState *bdrv_next(BlockDriverState *bs)
|
||||
{
|
||||
if (!bs) {
|
||||
return QTAILQ_FIRST(&bdrv_states);
|
||||
}
|
||||
return QTAILQ_NEXT(bs, list);
|
||||
}
|
||||
|
||||
void bdrv_iterate(void (*it)(void *opaque, BlockDriverState *bs), void *opaque)
|
||||
{
|
||||
BlockDriverState *bs;
|
||||
|
|
1
block.h
1
block.h
|
@ -168,6 +168,7 @@ void bdrv_set_change_cb(BlockDriverState *bs,
|
|||
void (*change_cb)(void *opaque), void *opaque);
|
||||
void bdrv_get_format(BlockDriverState *bs, char *buf, int buf_size);
|
||||
BlockDriverState *bdrv_find(const char *name);
|
||||
BlockDriverState *bdrv_next(BlockDriverState *bs);
|
||||
void bdrv_iterate(void (*it)(void *opaque, BlockDriverState *bs),
|
||||
void *opaque);
|
||||
int bdrv_is_encrypted(BlockDriverState *bs);
|
||||
|
|
Loading…
Reference in New Issue