From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:36499) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwsSr-0006Nq-7t for qemu-devel@nongnu.org; Thu, 02 Aug 2012 06:17:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SwsSp-0003zB-Rn for qemu-devel@nongnu.org; Thu, 02 Aug 2012 06:17:09 -0400 Received: from mail-wi0-f175.google.com ([209.85.212.175]:37395) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwsSp-0003z5-Ln for qemu-devel@nongnu.org; Thu, 02 Aug 2012 06:17:07 -0400 Received: by wibhm2 with SMTP id hm2so3765137wib.10 for ; Thu, 02 Aug 2012 03:17:07 -0700 (PDT) From: "=?UTF-8?q?Beno=C3=AEt=20Canet?=" Date: Thu, 2 Aug 2012 12:16:38 +0200 Message-Id: <1343902604-13981-7-git-send-email-benoit@irqsave.net> In-Reply-To: <1343902604-13981-1-git-send-email-benoit@irqsave.net> References: <1343902604-13981-1-git-send-email-benoit@irqsave.net> Subject: [Qemu-devel] [RFC 06/12] qorum: Add qorum_getlength(). List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, pbonzini@redhat.com, stefanha@linux.vnet.ibm.com, =?UTF-8?q?Beno=C3=AEt=20Canet?= Signed-off-by: Benoit Canet --- block/qorum.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/block/qorum.c b/block/qorum.c index 006ab8c..37f6514 100644 --- a/block/qorum.c +++ b/block/qorum.c @@ -119,12 +119,29 @@ static void qorum_close(BlockDriverState *bs) } } +static int64_t qorum_getlength(BlockDriverState *bs) +{ + BDRVQorumState *s = bs->opaque; + int i; + int64_t ret; + + /* return the length of the first available qorum file */ + for (i = 0, ret = bdrv_getlength(s->bs[i]); + ret == -ENOMEDIUM && i <= 2; + i++, ret = bdrv_getlength(s->bs[i])) { + } + + return ret; +} + static BlockDriver bdrv_qorum = { .format_name = "qorum", .protocol_name = "qorum", .instance_size = sizeof(BDRVQorumState), + .bdrv_getlength = qorum_getlength, + .bdrv_file_open = qorum_open, .bdrv_close = qorum_close, }; -- 1.7.9.5