From: Alberto Garcia Date: Mon, 2 Nov 2015 14:51:54 +0000 (+0200) Subject: block: Add blk_get_refcnt() X-Git-Tag: v2.5.0-rc0~14^2^2~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f636ae85f3db8ffb987c79715869dba1b8217e8a;p=thirdparty%2Fqemu.git block: Add blk_get_refcnt() This function returns the reference count of a given BlockBackend. For convenience, it returns 0 if the BlockBackend pointer is NULL. Signed-off-by: Alberto Garcia Reviewed-by: Max Reitz Message-id: dfdd8a17dbe3288842840636d2cfe5bb895abcb0.1446475331.git.berto@igalia.com Signed-off-by: Max Reitz --- diff --git a/block/block-backend.c b/block/block-backend.c index 1ac69824cab..6f9309fef4d 100644 --- a/block/block-backend.c +++ b/block/block-backend.c @@ -189,6 +189,11 @@ static void drive_info_del(DriveInfo *dinfo) g_free(dinfo); } +int blk_get_refcnt(BlockBackend *blk) +{ + return blk ? blk->refcnt : 0; +} + /* * Increment @blk's reference count. * @blk must not be null. diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h index 40e315b5bb5..f4a68e291b7 100644 --- a/include/sysemu/block-backend.h +++ b/include/sysemu/block-backend.h @@ -65,6 +65,7 @@ BlockBackend *blk_new_with_bs(const char *name, Error **errp); BlockBackend *blk_new_open(const char *name, const char *filename, const char *reference, QDict *options, int flags, Error **errp); +int blk_get_refcnt(BlockBackend *blk); void blk_ref(BlockBackend *blk); void blk_unref(BlockBackend *blk); const char *blk_name(BlockBackend *blk);