[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/11] vvfat: unify and correct computation of secto
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 09/11] vvfat: unify and correct computation of sector count |
Date: |
Mon, 7 Nov 2011 17:55:16 +0100 |
From: Paolo Bonzini <address@hidden>
The sector count is stored in the partition and hence must not include the
sectors before its start. At the same time, remove the useless special
casing for 1.44 MB floppies. This fixes fsck on VVFAT hard disks,
which otherwise tries to seek past the end of the disk.
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
block/vvfat.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/block/vvfat.c b/block/vvfat.c
index 1f7cc48..3e7b407 100644
--- a/block/vvfat.c
+++ b/block/vvfat.c
@@ -1026,8 +1026,6 @@ DLOG(if (stderr == NULL) {
bs->cyls = 80; bs->heads = 2; bs->secs = 36;
}
- s->sector_count=bs->cyls*bs->heads*bs->secs;
-
if (strstr(dirname, ":32:")) {
fprintf(stderr, "Big fat greek warning: FAT32 has not been tested. You
are welcome to do so!\n");
s->fat_type = 32;
@@ -1035,9 +1033,11 @@ DLOG(if (stderr == NULL) {
s->fat_type = 16;
} else if (strstr(dirname, ":12:")) {
s->fat_type = 12;
- s->sector_count=2880;
+ bs->secs = 18;
}
+ s->sector_count=bs->cyls*bs->heads*bs->secs-(s->first_sectors_number-1);
+
if (strstr(dirname, ":rw:")) {
if (enable_write_target(s))
return -1;
--
1.7.6.4
- [Qemu-devel] [PATCH 00/11] Block patches for 1.0, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 03/11] dma: Avoid reentrancy in DMA transfer handlers, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 01/11] qemu-io: Handle create_iovec errors, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 05/11] block/cloop: Use g_free instead of free, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 04/11] block/cloop: Fix coding style, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 08/11] vvfat: need to use first_sectors_number to distinguish fdd/hdd, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 06/11] vvfat: fix out of bounds array_get usage, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 09/11] vvfat: unify and correct computation of sector count,
Kevin Wolf <=
- [Qemu-devel] [PATCH 02/11] qemu-io: Fix multiwrite_f error handling, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 07/11] vvfat: do not fail if the disk has spare sectors, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 10/11] vvfat: do not hardcode sector counts in error message, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PATCH 11/11] vvfat: reorganize computation of disk geometry, Kevin Wolf, 2011/11/07
- [Qemu-devel] [PULL 00/11] Block patches for 1.0, Kevin Wolf, 2011/11/07