From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH 07/15] ftrace: fix event alignment: kvm:kvm_hv_hypercall Date: Wed, 08 Dec 2010 11:18:04 +0200 Message-ID: <4CFF4D4C.2070002@redhat.com> References: <1291421609-14665-1-git-send-email-dhsharp@google.com> <1291421609-14665-8-git-send-email-dhsharp@google.com> <4CF9F7AB.8050802@redhat.com> <4CFDFCEF.3080708@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: rostedt@goodmis.org, linux-kernel@vger.kernel.org, mrubin@google.com, kvm-devel To: David Sharp Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 12/07/2010 11:16 PM, David Sharp wrote: > > > > I don't understand this. Can you elaborate? What does "32-bit addressable" > > mean? > > The ring buffer gives you space that is a multiple of 4 bytes in > length, and 32-bit aligned. Therefore it is useless to attempt to > align the structure beyond 32-bit boundaries, eg, a 64-bit boundary, > because it is unpredictable if the memory the structure will be > written to is at a 64-bit boundary (addr % 8 could be 0 or 4). > > > And "predicated on packing the event structures"? Is the structure > > __attribute__((packed)), or is it not? > > It is not packed in Linus' tree, but one of the patches before this > patch in this patch series adds __attribute__((packed)). This patch > assumes that the event packing patch has been applied. This patch > should not be applied if the packing patch is not (hence, > "predicated"). Thanks for the explanations, it makes sense now. -- error compiling committee.c: too many arguments to function