Can't install Windows 7 with q35 (SATA)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Expired
|
Undecided
|
Unassigned |
Bug Description
I'm trying to install Windows 7 on a q35 machine on a "SATA disk". If I use q35 the installation is extremely slow. With extremely slow I mean, that the first few minutes (10-15 minutes) on the second installation step (copying files to disk) nothing happens. Than there is some progress, maybe until 9% and than there is "silence" for another 10 minutes or so. Therefore I used iotop (with --only option) in order to see, if there are any disk operations. But as I mentioned, only a few times qemu writes something to disk (with about < 1M/s). But most of the time there is nothing from qemu. Therefore the installation lasts over an hour. But even worse, after installation I can't boot Windows. Windows-
I've tried qemu 2.6.0, 2.6.1 and 2.7.0 (all versions from git).
My host machine:
Ubuntu 14.04.5 LTS
3.13.0-95-generic #142-Ubuntu SMP Fri Aug 12 17:00:09 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Intel(R) Core(TM) i5-3470 CPU
16 GB RAM
I used the following commands:
"Standard" command
qemu-system-x86_64 -m 2048 -machine q35,accel=kvm -cpu host,kvm=off -smp 1,sockets=
I think by using -hda sata will be used?!?
With explicit ahci:
qemu-system-x86_64 -m 2048 -machine q35,accel=kvm -cpu host,kvm=off -smp 1,sockets=
I don't know if this is totally correct, because it's a little bit weird that I have to use ide-drive on a ich9 bus.
Without kvm there is a continious disk write with 100 K/s - 5 M/s (works only with qemu 2.7.0, otherwise I get a 0x000000D1 bluescreen on the setup start screen):
qemu-system-x86_64 -m 2048 -machine q35 -cpu IvyBridge -hda win7_qemu_
But with all three commands the installed Windows is not working, because always the same error occurs: windows couldn't be loaded because kernel is missing or corrupt
Interestingly both commands ("standard" command and with explicit ahci) works very well with a Windows 10 installation.
In my opinion it's a "SATA problem", because if I use e.g. piix4-ide instead of ich9-ahci it works:
qemu-system-x86_64 -m 2048 -machine q35,accel=kvm -cpu host,kvm=off -smp 1,sockets=
With this command there is a continuous disk write and the installation is bootable.
Changed in qemu: | |
assignee: | nobody → John Snow (jnsnow) |
Changed in qemu: | |
status: | New → Confirmed |
Dennis, what's the exact version, edition, region (etc) of your Windows 7 install media?
It's been a while since I've tried to install Windows 7 personally, but around the ~2.4 timeframe I didn't have any problems. I'd like to try with your exact media if at all possible; can you give me a checksum? If it's official MSDN media I can correlate that and attempt to reproduce.
Thanks,
--js
PS:
(1) Yes, using -hda et al under the Q35 machine type will give you SATA disks on the AHCI device.
(2) All ATA-related devices are a type of "ide-drive" in QEMU, there is no explicit "SATA" drive because QEMU does not bother or care to emulate the transport specifics. At that level, ATA and SATA drives are almost exactly the same, apart from an expanded command verb repertoire in the SATA spec.