qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Hervé Poussineau" <hpoussin@reactos.org>
To: qemu-devel@nongnu.org
Cc: "Kevin Wolf" <kwolf@redhat.com>, "Max Reitz" <mreitz@redhat.com>,
	qemu-block@nongnu.org, "Hervé Poussineau" <hpoussin@reactos.org>
Subject: [Qemu-devel] [PATCH v2 01/13] vvfat: fix qemu-img map and qemu-img convert
Date: Mon, 22 May 2017 23:11:53 +0200	[thread overview]
Message-ID: <20170522211205.14265-2-hpoussin@reactos.org> (raw)
In-Reply-To: <20170522211205.14265-1-hpoussin@reactos.org>

- bs->total_sectors is the number of sectors of the whole disk
- s->sector_count is the number of sectors of the FAT partition

This fixes the following assert in qemu-img map:
qemu-img.c:2641: get_block_status: Assertion `nb_sectors' failed.

This also fixes an infinite loop in qemu-img convert.

Fixes: 4480e0f924a42e1db8b8cfcac4d0634dd1bb27a0
Fixes: https://bugs.launchpad.net/qemu/+bug/1599539
Signed-off-by: Hervé Poussineau <hpoussin@reactos.org>
---
 block/vvfat.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/block/vvfat.c b/block/vvfat.c
index 9c82371360..df24091bf6 100644
--- a/block/vvfat.c
+++ b/block/vvfat.c
@@ -2969,8 +2969,7 @@ vvfat_co_pwritev(BlockDriverState *bs, uint64_t offset, uint64_t bytes,
 static int64_t coroutine_fn vvfat_co_get_block_status(BlockDriverState *bs,
 	int64_t sector_num, int nb_sectors, int *n, BlockDriverState **file)
 {
-    BDRVVVFATState* s = bs->opaque;
-    *n = s->sector_count - sector_num;
+    *n = bs->total_sectors - sector_num;
     if (*n > nb_sectors) {
         *n = nb_sectors;
     } else if (*n < 0) {
-- 
2.11.0

  reply	other threads:[~2017-05-22 21:12 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-22 21:11 [Qemu-devel] [PATCH v2 00/13] vvfat: misc fixes for read-only mode Hervé Poussineau
2017-05-22 21:11 ` Hervé Poussineau [this message]
2017-05-22 21:17   ` [Qemu-devel] [Qemu-block] [PATCH v2 01/13] vvfat: fix qemu-img map and qemu-img convert Eric Blake
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 02/13] vvfat: replace tabs by 8 spaces Hervé Poussineau
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 03/13] vvfat: fix typos Hervé Poussineau
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 04/13] vvfat: rename useless enumeration values Hervé Poussineau
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 05/13] vvfat: introduce offset_to_bootsector, offset_to_fat and offset_to_root_dir Hervé Poussineau
2017-05-24  4:10   ` Philippe Mathieu-Daudé
2017-05-24 13:34     ` Eric Blake
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 06/13] vvfat: fix field names in FAT12/FAT16 and FAT32 boot sectors Hervé Poussineau
2017-05-22 21:11 ` [Qemu-devel] [PATCH v2 07/13] vvfat: always create . and .. entries at first and in that order Hervé Poussineau
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 08/13] vvfat: correctly create long names for non-ASCII filenames Hervé Poussineau
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 09/13] vvfat: correctly create base short " Hervé Poussineau
2017-05-24  4:17   ` Philippe Mathieu-Daudé
2017-05-24  5:43     ` Hervé Poussineau
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 10/13] vvfat: correctly generate numeric-tail of short file names Hervé Poussineau
2017-08-05 18:52   ` Pranith Kumar
2017-08-07 11:07     ` Eric Blake
2017-08-08 23:31       ` Pranith Kumar
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 11/13] vvfat: limit number of entries in root directory in FAT12/FAT16 Hervé Poussineau
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 12/13] vvfat: handle KANJI lead byte 0xe5 Hervé Poussineau
2017-05-24  4:20   ` Philippe Mathieu-Daudé
2017-05-22 21:12 ` [Qemu-devel] [PATCH v2 13/13] vvfat: change OEM name to 'MSWIN4.1' Hervé Poussineau
2017-05-23  4:23   ` Philippe Mathieu-Daudé
2017-05-23 19:41     ` Hervé Poussineau
2017-05-24  4:27       ` Philippe Mathieu-Daudé
2017-05-22 22:38 ` [Qemu-devel] [PATCH v2 00/13] vvfat: misc fixes for read-only mode no-reply
2017-07-03 16:50 ` Kevin Wolf
2017-07-06  5:27   ` Hervé Poussineau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170522211205.14265-2-hpoussin@reactos.org \
    --to=hpoussin@reactos.org \
    --cc=kwolf@redhat.com \
    --cc=mreitz@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).