On 04/05/2017 07:10 PM, Ralf Ramsauer wrote:
>
>
> On 04/05/2017 06:57 PM, Mark Rutland wrote:
>>>> What happens if you place a full-system DSB between the printks and hte
>>>> ldrex, i.e.
>>>>
>>>> asm volatible ("dsb sy\n" ::: "memory");
>>>>
>>>> ... do you still see the "Bar!" print?
>>> Yep, I do, on the TK1.
>>>
>>> On the Orange Pi 0, behavior does not change: I only see "Foo!" in
>>> either case.
>> It *might* be the case that on Orange Pi, the ldrex generates a PL1
>> exception that the guest doesn't handle, leaving it stuck in the
>> exception handlers.
> Let me verify that. I already registered handlers on the TK1 but none of
> them trapped. Didn't try that on the Orange Pi.
Here we go!
On the Orange Pi, I get a DABT, and then it continues executing. The
previously installed default inmate handler was just spinning around,
that's the reason why we only saw "Foo!" on the Orange Pi before, now we
get:
Foo!
DABT!
Bar!
Just for my understanding, we're receiving a DABT, because we're not
allowed to use the ldrex without active MMU resp. we're not using it on
write-back cacheable memory?
Well, anyway, on the TK1 there's no DABT :-)
>>
>> I do not have a good explanation for what's going on with the TK1. If
>> the ldrex generates some unhandled PL2 exception, that could explain the
> I think i could be able to instrument the hypervisor and check that as
> well...
... so I tried to instrument the hypervisor code to see if it arrives
there. But actually the HV does already handle DABTs: it would simply
panic the cell if a DABT arrives.
So seems like the DABT arrives nowhere?
Besides that I added a printk for every call of arch_handle_exit of the
HV. On the TK1, I can see (of course) tons of exits, Traps and vIRQs.
When I try to destroy the cell, I get some more Trap and IRQ exits, and
then it suddenly stops reporting.
Seems like whole execution stopped. Strange.
Thanks
Ralf
>> inability to kill it, and the system-wide hang, but I don't see how the
>> second print could occur in that case, unless the exception were
>> asynchronous.
>
> Sigh, and all that I wanted were some stupid spinlocks on bare metal
> inmates -.-
>
> Ralf
>>
>> Thanks,
>> Mark.
>
--
You received this message because you are subscribed to the Google Groups
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.