Paolo Bonzini <pbonz...@redhat.com> writes: > On 07/05/2018 09:56, Markus Armbruster wrote: >>>>> I'm not that sure anymore about -no-kvm. It can come in handy for >>>>> distros (*cough* RHEL *cough) that only ship a qemu-kvm binary with >>>>> default accelerator "-machine accel=kvm:tcg". >>>>> >>>>> Yeah, "-accel tcg" is only a few characters later, but it is a >>>>> relatively recent addition. >>>> >>>> 2012 is "relatively recent" in the alternate RHEL universe, perhaps :) >>> >>> That was the "-machine accel=tcg", but Paolo was rather talking about >>> "-accel tcg", which has been added last year. Yes, we've got three (!) >>> ways of dealing with accelerators now: "-M accel=", "-accel" and >>> "-enable-kvm + -no-kvm". We're very userfriendly, aren't we? ;-) >> >> Ugh. Apparently, vl.c still is a playground without adult supervision. > > I'm not sure I get it... "-accel" was added in order to provide > accelerator options. If anything, "-machine accel" (added back in 2010) > is the one that makes little sense these days.
Adding more and more ways to do the same stuff does not improve an interface. Interface design needs to be *opinionated*. If we decide -machine accel=tcg isn't a nice interface, by all means create a better one, but as replacement[*], not as addition. Furthermore: tcg: add options for enabling MTTCG We know there will be cases where MTTCG won't work until additional work is done in the front/back ends to support. It will however be useful to be able to turn it on. As a result MTTCG will default to off unless the combination is supported. However the user can turn it on for the sake of testing. Signed-off-by: KONRAD Frederic <fred.kon...@greensocs.com> [AJB: move to -accel tcg,thread=multi|single, defaults] Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Reviewed-by: Richard Henderson <r...@twiddle.net> I'm sorry, but this us sub-par. Yes, the commit is also about "enabling MTTCG", but it also adds a new way to select accelerators, without ever spelling that out. It should've been split, and properly described. [*] Replacements generally involve deprecation and a grace period.