[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] vm_event: Implement ARM SMC events




On Apr 11, 2016 22:31, "Jan Beulich" <jbeulich@xxxxxxxx> wrote:
>
> >>> Tamas K Lengyel <tamas@xxxxxxxxxxxxx> 04/11/16 9:47 PM >>>
> >--- a/xen/include/public/vm_event.h
> >+++ b/xen/include/public/vm_event.h
> >@@ -166,6 +166,31 @@ struct vm_event_regs_x86 {
>      >uint32_t _pad;
>  >};
>  >
> >+struct vm_event_regs_arm {
> >+    uint32_t r0;
> >+    uint32_t r1;
> >+    uint32_t r2;
> >+    uint32_t r3;
> >+    uint32_t r4;
> >+    uint32_t r5;
> >+    uint32_t r6;
> >+    uint32_t r7;
> >+    uint32_t r8;
> >+    uint32_t r9;
> >+    uint32_t r10;
> >+    uint32_t r11;
> >+    uint32_t r12;
> >+
> >+    uint32_t sp; /* r13 - SP: Valid for Hyp. frames only, o/w banked (see below) */
> >+    uint32_t lr; /* r14 - LR: Valid for Hyp. Same physical register as lr_usr. */
> >+
> >+    uint32_t cpsr; /* Return mode */
> >+    uint64_t pc;
>
> Why uint64_t instead of uint32_t?

No apparent reason, will fix.

>
> >+    uint64_t ttbr0;
> >+    uint64_t ttbr1;
> >+    uint32_t _pad;
> >+};
>
> This padding field is pretty strange: Without the adjustment to pc there are 16
> 32-bit fields (not counting the padding one), so I don't see why padding would be
> needed at all. And with pc adjusted the padding field would surely better go
> ahead of the two remaining 64-bit ones.

Yes, I have been shuffling this struct around and didn't check the layout. Will fix. I'll also try to make this struct usable for aarch64 too.

Tamas

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.