Re: [PATCH 07/15] ftrace: fix event alignment: kvm:kvm_hv_hypercall

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

 



On 12/06/2010 10:38 PM, David Sharp wrote:
On Sat, Dec 4, 2010 at 12:11 AM, Avi Kivity<avi@xxxxxxxxxx>  wrote:
>  On 12/04/2010 02:13 AM, David Sharp wrote:
>>
>>  Signed-off-by: David Sharp<dhsharp@xxxxxxxxxx>
>>  ---
>>    arch/x86/kvm/trace.h |    8 ++++----
>>    1 files changed, 4 insertions(+), 4 deletions(-)
>>
>>  diff --git a/arch/x86/kvm/trace.h b/arch/x86/kvm/trace.h
>>  index a6544b8..ab41fb0 100644
>>  --- a/arch/x86/kvm/trace.h
>>  +++ b/arch/x86/kvm/trace.h
>>  @@ -62,21 +62,21 @@ TRACE_EVENT(kvm_hv_hypercall,
>>          TP_ARGS(code, fast, rep_cnt, rep_idx, ingpa, outgpa),
>>
>>          TP_STRUCT__entry(
>>  -               __field(        __u16,          code            )
>>  -               __field(        bool,           fast            )
>>                  __field(        __u16,          rep_cnt         )
>>                  __field(        __u16,          rep_idx         )
>>                  __field(        __u64,          ingpa           )
>>                  __field(        __u64,          outgpa          )
>>  +               __field(        __u16,          code            )
>>  +               __field(        bool,           fast            )
>>          ),
>>
>
>  Looks like a pessimisation.
>
>  Before: 24 bytes
>  After: 32 bytes
>
>  (on a 64-bit machine, assuming no packing)

This patch is predicated on packing the event structures. And since
the ring buffer is 32-bit addressable, I don't attempt to improve
alignment beyond 32-bit boundaries.

I don't understand this. Can you elaborate? What does "32-bit addressable" mean? And "predicated on packing the event structures"? Is the structure __attribute__((packed)), or is it not?

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux