qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] block-vvfat RW patch


From: Kazu
Subject: Re: [Qemu-devel] block-vvfat RW patch
Date: Tue, 5 Sep 2006 18:36:02 +0900

Hi,

I confirmed it works. Thank you.

Regards,
Kazu


Sent: Tuesday, September 05, 2006 8:57 AM Roger Lathrop wrote:

> Attached patch fixes 3 issues I found while trying to write files from
guest
> to a vfat drive using this configuration:
> Host: Windows XP (NTFS)
> Guest: DOS 5 (yeah, really!)
> Compiler: gcc version 3.4.2 (mingw-special)
> Qemu Version: 0.8.2
> Command line: qemu ....-hdb fat:rw:c:\dev\qemu\work...
>
> Problem: Qemu would fault when copying files from guest to d:\
>
> Changes:
>
> 1) Fixed assert macro for mingw. Original causes spurious faults when
> there's a dangling else after the assert.
> 2) Added O_BINARY to open call in commit_one_file().  Without it, binary
> files get LF-->CR/LF translations on Windows.
> 3) Changed sector2cluster to return a signed int, and added type casts to
> force the division to be signed.
>
> First 2 changes are straight forward and should be safe. 3'rd solved my
> problem, but should be looked at by someone who understands vvfat better
> than me. I've only tested on the above configuration.
> The problem I saw was DOS writing to sectors less than s->faked_sectors.
The
> unsigned divide returned a large positive number, which would fault in
this
> bit of code in vvfat_write:
> if (i >= 0)
>  s->used_clusters[i] |= USED_ALLOCATED;
>
> This fix seems reasonable, since the callers of sector2cluster seem to
> expect a signed result. I suppose an alternate fix would be to test for
the
> special case and always return -1. But I hate special cases ;-)
>
> Patch is against 0.8.2, not current CVS, sorry. Doesn't appear to have
been
> fixed since 0.8.2
>
> Good to have this working. Our app is an embedded system with really crude
> (read, no TCP/IP) network support. Until now, getting log files off the
> guest has been a pain. So, a big THANKS to whoever wrote block-vvfat,
> despite the little buglets.
>
> Roger





reply via email to

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