Richard Henderson <r...@twiddle.net> writes:

> On 01/19/2017 09:04 AM, Alex Bennée wrote:
>> +void qemu_tcg_configure(QemuOpts *opts, Error **errp)
>> +{
>> +    const char *t = qemu_opt_get(opts, "thread");
>> +    if (t) {
>> +        if (strcmp(t, "multi") == 0) {
>> +            if (TCG_OVERSIZED_GUEST) {
>> +                error_setg(errp, "No MTTCG when guest word size > hosts");
>
> I agree with this, since I don't ever imagine it'll be fixed.  It's a silly 
> use
> case in the first place considering the ubiquity of 64-bit hosts.

Funnily enough I know one kernel hacker who does use this to test their
arm64 kernels on their re-purposed armhf chromebooks. I've already
explained coming their way ;-)

>
>> +            } else if (!check_tcg_memory_orders_compatible()) {
>> +                error_setg(errp,
>> +                           "No MTTCG when guest MO is stronger than host 
>> MO");
>
> This, on the other hand, means that one cannot even force multi for testing.  
> A
> warning perhaps?

I did toy with making that a warning when I first wrote it. I'll make it so.

> And how shall we handle a guest translate adding barriers as
> necessary to satisfy host memory ordering?

We are talking about doing the necessary annotation to all a givens
targets loads and stores? I figured this code would morph and be tweaked
when (if?) we get there.

--
Alex Bennée

Reply via email to