[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug 304636] Re: -hda FAT:. limited to 504MBytes

From: Daniel Berrange
Subject: [Bug 304636] Re: -hda FAT:. limited to 504MBytes
Date: Tue, 09 Feb 2021 14:29:30 -0000

If you need OS portability then the "usb-mtp" device is also an option
for adhoc file sharing.

You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.

  -hda FAT:. limited to 504MBytes

Status in QEMU:
Status in qemu package in Ubuntu:
  Won't Fix

Bug description:
  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.

  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;


To manage notifications about this bug go to:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]