block: make bdrv_delete() static

Manage BlockDriverState lifecycle with refcnt, so bdrv_delete() is no
longer public and should be called by bdrv_unref() if refcnt is
decreased to 0.

This is an identical change because effectively, there's no multiple
reference of BDS now: no caller of bdrv_ref() yet, only bdrv_new() sets
bs->refcnt to 1, so all bdrv_unref() now actually delete the BDS.

Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
Fam Zheng 2013-08-23 09:14:47 +08:00 committed by Stefan Hajnoczi
parent 9fcb025146
commit 4f6fd3491c
19 changed files with 58 additions and 58 deletions

View file

@ -32,7 +32,7 @@ static char **cmdline;
static int close_f(BlockDriverState *bs, int argc, char **argv)
{
bdrv_delete(bs);
bdrv_unref(bs);
qemuio_bs = NULL;
return 0;
}
@ -61,7 +61,7 @@ static int openfile(char *name, int flags, int growable)
if (bdrv_open(qemuio_bs, name, NULL, flags, NULL) < 0) {
fprintf(stderr, "%s: can't open device %s\n", progname, name);
bdrv_delete(qemuio_bs);
bdrv_unref(qemuio_bs);
qemuio_bs = NULL;
return 1;
}
@ -422,7 +422,7 @@ int main(int argc, char **argv)
bdrv_drain_all();
if (qemuio_bs) {
bdrv_delete(qemuio_bs);
bdrv_unref(qemuio_bs);
}
return 0;
}