On Tue, Dec 24, 2019 at 01:10:34PM -0300, Fabiano Rosas wrote: > David Gibson <da...@gibson.dropbear.id.au> writes: > > >> It looks like the hflags MSR_LE is being updated correctly with TCG. But > >> with KVM we only touch it on system_reset > > > > Ah.. right. I think to fix that we'd want an hreg_compute_hflags() at > > the end of sucking the state out of KVM. > > > > Hm.. The hflags is a TCG thing that does not get used with KVM at all, > except for that one bit in the monitor disas function. I'd rather keep > it completely out of kvm_enabled code.
That's a fair point. It doesn't look like there's any reason ppc_tr_init_disas_context() couldn't initialize ctx->le_mode directly from the MSR rather than hflags anyway. If we do that, we should again be able to remove the LE bit from hflags entirely. I think that's the way to go. > > Couldn't we perhaps make it conditional on the acceleration type? > Using kvm_enabled() or some ifdef. > > Thanks > > >> (and possibly h_cede? I don't > >> know if it is QEMU who handles it). > > > > It's KVM. If we used the qemu one it would add an awful lot of > > latency to cedes. > >> > >> So I would let hflags be. > >> > >> > >> ... Actually, I don't really know the purpose of hflags. It comes from: > >> > >> commit 3f3373166227b13e762e20d2fb51eadfa6a2d653 > >> Author: Fabrice Bellard <fabr...@bellard.org> > >> Date: Wed Aug 20 23:02:09 2003 +0000 > >> > >> pop ss, mov ss, x and sti disable irqs for the next instruction - > >> began dispatch optimization by adding new x86 cpu 'hidden' flags > >> > >> > >> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@372 > >> c046a42c-6fe2-441c-8c8c-71466251a162 > >> > >> Could any one clarify that? > > > > Not really. It's really, really old, in the cruft bits of TCG I don't > > much understand. > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature