[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 4/6] vvfat: unify and correct computation of sector
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 4/6] vvfat: unify and correct computation of sector count |
Date: |
Wed, 5 Oct 2011 09:12:06 +0200 |
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>
---
block/vvfat.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/block/vvfat.c b/block/vvfat.c
index eb91642..a682eae 100644
--- a/block/vvfat.c
+++ b/block/vvfat.c
@@ -1040,8 +1040,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;
@@ -1049,9 +1047,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
- [Qemu-devel] [PATCH 0/6] misc vvfat fixes, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 2/6] vvfat: do not fail if the disk has spare sectors, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 1/6] vvfat: fix out of bounds array_get usage, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 3/6] vvfat: need to use first_sectors_number to distinguish fdd/hdd, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 5/6] vvfat: do not hardcode sector counts in error message, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 6/6] vvfat: reorganize computation of disk geometry, Paolo Bonzini, 2011/10/05
- [Qemu-devel] [PATCH 4/6] vvfat: unify and correct computation of sector count,
Paolo Bonzini <=
- [Qemu-devel] ping Re: [PATCH 0/6] misc vvfat fixes, Paolo Bonzini, 2011/10/27