blob: 2c6674874a0c3cc56f52e55c039b53e039e29eac (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
-hda FAT:. limited to 504MBytes
Binary package hint: qemu
The size of the virtual FAT file system (for sharing a particular directory with Guest OS) is hard-coded to be limited to 504MBytes, in block-vvfat.c
--
/* 504MB disk*/
bs->cyls=1024; bs->heads=16; bs->secs=63;
--
If the directory contents exceeds this is stops with an assert
--
qemu: block-vvfat.c:97: array_get: Assertion `index < array->next' failed.
Aborted
--
Also the FAT16 mode (default) only uses 8KByte cluster sizes which prevents the above being increased. 16KByte and 32KByte sectors can be selected with the following patch
--
--- block-vvfat.c_orig 2008-12-02 12:37:28.000000000 -0700
+++ block-vvfat.c 2008-12-02 19:50:35.000000000 -0700
@@ -1042,6 +1042,12 @@
s->fat_type = 32;
} else if (strstr(dirname, ":16:")) {
s->fat_type = 16;
+ } else if (strstr(dirname, ":16-16K:")) {
+ s->fat_type = 16;
+ s->sectors_per_cluster=0x20;
+ } else if (strstr(dirname, ":16-32K:")) {
+ s->fat_type = 16;
+ s->sectors_per_cluster=0x40;
} else if (strstr(dirname, ":12:")) {
s->fat_type = 12;
s->sector_count=2880;
--
Cheers,
Mungewell
|