[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <5AE9700002000078001C0064@prv1-mh.provo.novell.com>
Date: Wed, 02 May 2018 02:00:00 -0600
From: "Jan Beulich" <JBeulich@...e.com>
To: "Boris Ostrovsky" <boris.ostrovsky@...cle.com>
Cc: "xen-devel" <xen-devel@...ts.xenproject.org>,
"Juergen Gross" <jgross@...e.com>, <linux-kernel@...r.kernel.org>,
<stable@...r.kernel.org>
Subject: Re: [Xen-devel] [PATCH 1/4] xen/PVH: Replace GDT_ENTRY with
explicit constant
>>> On 30.04.18 at 18:23, <boris.ostrovsky@...cle.com> wrote:
> Latest binutils release (2.29.1) will no longer allow proper computation
> of GDT entries on 32-bits, with warning:
>
> arch/x86/xen/xen-pvh.S: Assembler messages:
> arch/x86/xen/xen-pvh.S:150: Warning: shift count out of range (32 is not between 0 and 31)
> arch/x86/xen/xen-pvh.S:150: Warning: shift count out of range (40 is not between 0 and 31)
> arch/x86/xen/xen-pvh.S:150: Warning: shift count out of range (32 is not between 0 and 31)
> arch/x86/xen/xen-pvh.S:152: Warning: shift count out of range (32 is not between 0 and 31)
> arch/x86/xen/xen-pvh.S:152: Warning: shift count out of range (40 is not between 0 and 31)
> arch/x86/xen/xen-pvh.S:152: Warning: shift count out of range (32 is not between 0 and 31)
I think this is a mis-configured binutils build - even if targeting 32-bit only, it
should allow 64-bit arithmetic (i.e. be configured with --enable-64-bit-bfd).
Note how, for example, this
.long 1 << 32, 0x10000 * 0x10000
.quad 1 << 32, 0x10000 * 0x10000
assembles consistently with a warning on _both_ values on the first line
with what I'd call a properly configured binutils build, but errors only on
the shift expressions on each line for an (imo) improperly configured one.
The only viable alternative would imo be to simply disallow .quad without
--enable-64-bit-bfd, but I guess that would break a number of consumers.
In any event I'd like to suggest to drop this patch.
Jan
Powered by blists - more mailing lists