[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH] vm_event: Implement ARM SMC events
- To: Tamas K Lengyel <tamas.k.lengyel@xxxxxxxxx>
- From: Corneliu ZUZU <czuzu@xxxxxxxxxxxxxxx>
- Date: Wed, 13 Apr 2016 11:55:03 +0300
- Cc: Wei Liu <wei.liu2@xxxxxxxxxx>, Keir Fraser <keir@xxxxxxx>, Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>, Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Ian Jackson <ian.jackson@xxxxxxxxxxxxx>, Julien Grall <julien.grall@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- Delivery-date: Wed, 13 Apr 2016 08:54:53 +0000
- List-id: Xen developer discussion <xen-devel.lists.xen.org>
On 4/12/2016 8:24 PM, Tamas K Lengyel
wrote:
That seems to apply to single-stepping only, which would be a
different matter. As for stealthiness or not limiting the guest, IMO
that shouldn't be a problem with BKPT/BRK, since I believe you can
inject the breakpoint exception into the guest as if no hypervisor
trap occured in between (of course, once you decide whether that
breakpoint is Xen's or guest-internal). But what about X86? How is
stealthiness achieved there? Is INT3 entirely not available for the
guest anymore when guest-debugging is enabled or are ALL INT3's
reported by Xen as software breakpoint vm-events?
Pass-through meaning "not trapped at all"? If yes, the problem would
be that you won't be able to set breakpoints when SMC is configured
to "completely" pass-through. But there's also the option of
emulating the SMC, instead of not trapping it at all, when
pass-through is needed, although IDK how complex that emulation
would be.
Another issue came to my mind: "HVC #imm", if handled through the
hvm-ops code, currently requires setting other registers to
predefined values before the HVC is actually issued. That would
imply additional effort to save/restore those registers if an
external privileged domain would want to set guest breakpoints.
Given that, if we were to use HVC for sw-bkpts, IMO it would be nice
if the hvm-ops code architecture would be slightly changed such that
-lone- "HVM #imm" calls would be achievable for some use cases, such
as this.
Then you'd have to differentiate between a genuine guest SMC and a
software-breakpoint SMC. IDK how much of a problem that would be.
Isn't the HVC-part already achieved by guest-request vm-events?
Maybe tying this vm-event specifically to SMC (in which case the
name could be something like VM_EVENT_REASON_SECURE_CALL) and thus
making it ARM-specific would avoid that redundancy?
Cheers,
Corneliu.
|
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|