On Wed, 2013-02-20 at 12:12 -0600, Anthony Liguori wrote: > The above implements a CPU-only soft reset that should fix the problem > you're having with PAM resetting unconditionally. If it works, I'll > fixup the other PC callers of reset too.
To be clear: that wasn't my problem :) If people want to run OS/2, VDISK or whatever else needs to get back from protected mode to real mode with a CPU reset but *without* a full system reset, it's going to be *their* problem. And I suspect they have other problems already, so I don't feel too guilty about the final patch in my tree at git.infradead.org/users/dwmw2/qemu.git doing the PAM reset unconditionally. That works just fine for me. if (val & 4) { - qemu_system_reset_request(); + if (val & 2) { + piix_soft_reset_request(); + } else { + qemu_system_reset_request(); + } return; Those are the wrong way round, I think. If bit 1 is set, that's a hard reset and should use qemu_system_reset_request(). If it's *not* set, then it's supposed to be a soft reset (like a port 92 or keyboard controller reset). -- dwmw2
smime.p7s
Description: S/MIME cryptographic signature