This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] uint64_aligned_t not compatible across gcc versions

To: Jan Beulich <jbeulich@xxxxxxxxxx>, John Levon <levon@xxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] uint64_aligned_t not compatible across gcc versions
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Wed, 30 Aug 2006 17:46:26 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 30 Aug 2006 09:46:57 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <44F45351.76E4.0078.0@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcbMU9VTE7LjNjhHEdux/QAKle7CWA==
Thread-topic: [Xen-devel] uint64_aligned_t not compatible across gcc versions
User-agent: Microsoft-Entourage/
On 29/8/06 1:46 pm, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

>>>  /* Structural guest handles introduced in 0x00030201. */
>>>  #if (defined(__XEN__) || defined(__XEN_TOOLS__)) && !defined(__ASSEMBLY__)
>>> -typedef uint64_t __attribute__((aligned(8))) uint64_aligned_t;
>>> +#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
>> This is GCC-specific, in a public header. At the very least it needs to
>> be conditional on gcc being used (#define __xen_aligned or whatever)...
> That is a comment regarding the original change, then. I still agree this
> should be abstracted out in some way - the question is how, since I
> guess users of other compilers would need to provide input.

I'll admit there's still the question of whether this is worthwhile for just
these two hypercalls in the first place. Jan: do you think much code will be
saved by explicit alignment for domctl/sysctl, or do you think we're just as
well to remove uint64_aligned_t and XEN_GUEST_HANDLE_64, and do compat shims
for domctl/sysctl just as we are for all other hypercalls?

 -- Keir

Xen-devel mailing list