summary refs log tree commit diff stats
path: root/results/classifier/accel-gemma3:12b/kvm/1854878
blob: b64004747146dbee76d97075659a71b606c23691 (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
Physical USB thumbdrive treated as read-only

So I have installed FreeDOS on my USB thumbdrive, by using Rufus. Everything goes as expected so far. That's good.

When I run QEMU with this command line:
qemu-system-x86_64.exe -drive file=\\.\PhysicalDrive1

it of course is read-only, just like the resulting console message says:
WARNING: Image format was not specified for '\\.\PhysicalDrive1' and probing guessed raw.
         Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
         Specify the 'raw' format explicitly to remove the restrictions.


So what I then did, was I ran QEMU with this command line:
qemu-system-x86_64.exe -drive file=\\.\PhysicalDrive1,format=raw

As expected, the above mentioned console message no longer appears.
However, beyond that, QEMU doesn't behave as it should regarding read-only status. When I try any operation that involves writing to the drive, it becomes quite clear that the drive is still read-only. Any writing operations to the drive result in FreeDOS giving me the error message:
Error writing to drive C: DOS area: sector not found.

The above situation is clearly a bug. QEMU should not be treating it as read-only once I specify format=raw.

Note that drive C is how the guest OS refers to the USB thumbdrive (it's drive E in my host OS, and drive C in my host OS is the actual system drive).

And yes, it is a QEMU bug. It's not a FreeDOS bug I tested it with this command line, so that all changes would be written to a temporary snapshot file:
qemu-system-x86_64.exe -drive file=\\.\PhysicalDrive1,format=raw,snapshot
That last drive option "snapshot" tells QEMU to create a temporary snapshot file, and to write all changes to that. When I do that, all write operations are successful. So it seems that there is a bug in QEMU where it keeps read-only mode in place for a physical drive, even when format=raw is specified. Please fix this bug. Thanks in advance.

Here's my current setup.
Host OS: Windows 10 (64bit)
Guest OS: FreeDOS
QEMU version: 4.1.0