According to a recent iTWire article, there was a bug found in Mac OS X that can cause loss of data in VMware Fusion virtual machines. According to VMware, the underlying problem is in the way Mac OS X handles unbuffered I/O and seems to refer to a problem between Fusion and OS X about what sequences of disk-write calls are legal to make.
The article says that unbuffered I/O works by sending data directly to the file, as opposed to buffered I/O which stages the data to be written into a block of memory (a buffer) and then writes the contents of the buffer out to the file.
When using default settings in Fusion, unbuffered I/O is not used. However Fusion does give the user the ability to choose to optimize virtual machine disk performance by enabling unbuffered I/O. The feature was disabled in earlier versions of Fusion, however, it was restored in version 1.1.3 if the product was running on top of Mac OS X 10.5.3 or later because it was thought that this version of the OS had fixed the problem. However, it seems that the problem still exists, and VMware is aggressively pushing Apple for a fix.
It seems that unbuffered I/O is still failing in some circumstances when used by Fusion. If the bug causes the virtual machine to hang at the wrong time (not that there's ever a right time for a hang!), its disk can become corrupted to the extent that the guest operating system must be reinstalled or the VM image restored from a (hopefully recent) backup.
For now, VMware says "We have reported this issue to Apple, but until this bug is resolved, we recommend that all VMware Fusion users ensure they select the default option, in VMware Fusion Preferences, for 'Optimize for virtual machine disk performance' to guard against potential data loss."
Read the entire iTWire article.