All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <Ian.Campbell@citrix.com>
To: Keir Fraser <keir.xen@gmail.com>
Cc: Stefano Stabellini <stefano.stabellini@citrix.com>,
	"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>,
	Jan Beulich <JBeulich@suse.com>
Subject: Re: [xen-unstable test] 16231: regressions - FAIL
Date: Tue, 26 Feb 2013 09:06:49 +0000	[thread overview]
Message-ID: <1361869609.11431.26.camel@dagon.hellion.org.uk> (raw)
In-Reply-To: <1361783984.26546.160.camel@zakaz.uk.xensource.com>

This patch fixes the current build breakage, anyone want to ack or nack?

I'm about to cycle into the office, hopefully I can apply when I arrive.

Ian.

> > However, the problem in this case appears to be that the ARM structure size
> > has changed. If so, that needs to be fixed, or reference.size needs to be
> > updated.
> 
> The problem is the use of '#pragma pack(4)' when building the foreign
> headers on x86_32.
> 
> I think it is useful to keep checking all arches on every build, rather
> than splitting into x86 and arm checks, since that will help catch
> inadvertent cross-arch breakage.
> 
> 8<-------------------
> 
> 
> From a20962085ef8d4c3d55f830647cdcb496bc5ee4a Mon Sep 17 00:00:00 2001
> From: Ian Campbell <ian.campbell@citrix.com>
> Date: Mon, 25 Feb 2013 09:11:04 +0000
> Subject: [PATCH] tools: foreign: ensure 64 bit values are properly aligned for arm
> 
> When building the foreign headers on x86_32 we use '#pragma pack(4)' and
> therefore need to explicitly align types which should be aligned to 8-byte
> boundaries.
> 
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> ---
>  tools/include/xen-foreign/mkheader.py |   14 ++++++++++----
>  1 files changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/include/xen-foreign/mkheader.py b/tools/include/xen-foreign/mkheader.py
> index 8a784d3..5bd6eec 100644
> --- a/tools/include/xen-foreign/mkheader.py
> +++ b/tools/include/xen-foreign/mkheader.py
> @@ -20,15 +20,18 @@ footer = {};
>  inttypes["arm32"] = {
>      "unsigned long" : "uint32_t",
>      "long"          : "uint32_t",
> -    "xen_pfn_t"     : "uint64_t",
> -    "xen_ulong_t"   : "uint64_t",
> +    "xen_pfn_t"     : "__align8__ uint64_t",
> +    "xen_ulong_t"   : "__align8__ uint64_t",
> +    "uint64_t"      : "__align8__ uint64_t",
>  };
>  header["arm32"] = """
>  #define __arm___ARM32 1
>  #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
>  # define __DECL_REG(n64, n32) union { uint64_t n64; uint32_t n32; }
> +# define __align8__ __attribute__((aligned (8)))
>  #else
>  # define __DECL_REG(n64, n32) uint64_t n64
> +# define FIXME
>  #endif
>  """;
>  footer["arm32"] = """
> @@ -38,15 +41,18 @@ footer["arm32"] = """
>  inttypes["arm64"] = {
>      "unsigned long" : "__danger_unsigned_long_on_arm64",
>      "long"          : "__danger_long_on_arm64",
> -    "xen_pfn_t"     : "uint64_t",
> -    "xen_ulong_t"   : "uint64_t",
> +    "xen_pfn_t"     : "__align8__ uint64_t",
> +    "xen_ulong_t"   : "__align8__ uint64_t",
> +    "uint64_t"      : "__align8__ uint64_t",
>  };
>  header["arm64"] = """
>  #define __aarch64___ARM64 1
>  #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
>  # define __DECL_REG(n64, n32) union { uint64_t n64; uint32_t n32; }
> +# define __align8__ __attribute__((aligned (8)))
>  #else
>  # define __DECL_REG(n64, n32) uint64_t n64
> +# define FIXME
>  #endif
>  """;
>  footer["arm64"] = """

  parent reply	other threads:[~2013-02-26  9:06 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-23 12:13 [xen-unstable test] 16231: regressions - FAIL xen.org
2013-02-23 16:09 ` Ian Jackson
2013-02-23 16:26   ` Keir Fraser
2013-02-25  9:19     ` Ian Campbell
2013-02-25 11:03       ` Ian Campbell
2013-02-26  9:06       ` Ian Campbell [this message]
2013-02-26  9:54         ` Jan Beulich
2013-02-26 10:12           ` Ian Campbell
2013-02-26 12:22             ` Ian Jackson
2013-02-26 12:27               ` Ian Campbell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1361869609.11431.26.camel@dagon.hellion.org.uk \
    --to=ian.campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=JBeulich@suse.com \
    --cc=keir.xen@gmail.com \
    --cc=stefano.stabellini@citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.