linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	Andy Lutomirski <luto@amacapital.net>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@kernel.org>
Subject: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
Date: Fri, 15 Jul 2016 12:43:26 -0300	[thread overview]
Message-ID: <20160715154326.GC2523@redhat.com> (raw)
In-Reply-To: <20160715152436.GB2523@redhat.com>

Em Fri, Jul 15, 2016 at 12:24:36PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Fri, Jul 15, 2016 at 12:09:03PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Fri, Jul 15, 2016 at 09:31:19AM +0200, Peter Zijlstra escreveu:
> > > On Fri, Jul 15, 2016 at 09:22:43AM +0200, Peter Zijlstra wrote:
> > > > All GCC versions I checked have __CHAR_BIT__ and __SIZEOF_LONG__.

> > > > (and I checked most everything from 4.4 - 6.1)

> > > clang-3.8 also defines all three of those, and I don't consider that a
> > > usable compiler as it doesn't even build a kernel.

> > I was trying to have that file as close to the kernel as possible, but
> > I'll try building with your patch in my test rig, lets see if one of the
> > dozens of distros/releases barf at that...

> Seems ok, but I'll reinstate this:

> #if BITS_PER_LONG != __BITS_PER_LONG
> #error Inconsistent word size. Check asm/bitsperlong.h
> #endif

> And now I'm rerunning these tests, that without the above check

Ok, same results, it works, queuing this one, ack? Stephen, does it work
for you?

commit a08cc3e6f7bb965672a3ff60f98d0dbbc5334ee7
Author: Peter Zijlstra <peterz@infradead.org>
Date:   Fri Jul 15 12:38:18 2016 -0300

    tools: Simplify BITS_PER_LONG define
    
    Do it using (__CHAR_BIT__ * __SIZEOF_LONG__), simpler, works everywhere,
    reduces the complexity by ditching CONFIG_64BIT, that was being
    synthesized from yet another set of defines, which proved fragile,
    breaking the build on linux-next for no obvious reasons.
    
    Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Peter Zijlstra <peterz@infradead.org>
    Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Andy Lutomirski <luto@amacapital.net>,
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Link: http://lkml.kernel.org/r/20160715072243.GP30154@twins.programming.kicks-ass.net
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

diff --git a/tools/include/asm-generic/bitsperlong.h b/tools/include/asm-generic/bitsperlong.h
index cfd661c6fc17..4c7a9ab42424 100644
--- a/tools/include/asm-generic/bitsperlong.h
+++ b/tools/include/asm-generic/bitsperlong.h
@@ -3,30 +3,7 @@
 
 #include <uapi/asm-generic/bitsperlong.h>
 
-/*
- * In the kernel, where this file comes from, we can rely on CONFIG_64BIT,
- * here we have to make amends with what the various compilers provides us
- * to figure out if we're on a 64-bit machine...
- */
-#ifdef __SIZEOF_LONG__
-# if __SIZEOF_LONG__ == 8
-#  define CONFIG_64BIT
-# endif
-#else
-# ifdef __WORDSIZE
-#  if __WORDSIZE == 64
-#   define CONFIG_64BIT
-#  endif
-# else
-#  error Failed to determine BITS_PER_LONG value
-# endif
-#endif
-
-#ifdef CONFIG_64BIT
-#define BITS_PER_LONG 64
-#else
-#define BITS_PER_LONG 32
-#endif /* CONFIG_64BIT */
+#define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
 
 #if BITS_PER_LONG != __BITS_PER_LONG
 #error Inconsistent word size. Check asm/bitsperlong.h

  parent reply	other threads:[~2016-07-15 15:43 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-15  7:06 linux-next: build failure after merge of the luto-misc tree Stephen Rothwell
2016-07-15  7:22 ` Peter Zijlstra
2016-07-15  7:31   ` Peter Zijlstra
2016-07-15 15:09     ` Arnaldo Carvalho de Melo
2016-07-15 15:24       ` Arnaldo Carvalho de Melo
2016-07-15 15:29         ` Peter Zijlstra
2016-07-15 15:56           ` Arnaldo Carvalho de Melo
2016-07-15 15:43         ` Arnaldo Carvalho de Melo [this message]
2016-07-15 15:49           ` [PATCH/RFC] " Peter Zijlstra
2016-07-15 16:28             ` Arnaldo Carvalho de Melo
2016-07-15 20:26               ` H. Peter Anvin
2016-07-18  5:18           ` Stephen Rothwell
2016-07-18 20:04             ` Andy Lutomirski
2016-07-18 20:36               ` Arnaldo Carvalho de Melo
2016-07-18 22:22                 ` Stephen Rothwell
2016-07-18 23:41                   ` Arnaldo Carvalho de Melo
2016-07-19  0:26                     ` Stephen Rothwell
2016-07-19  0:39                       ` Arnaldo Carvalho de Melo
2016-07-19  3:26                         ` Stephen Rothwell
2016-07-19 12:54                           ` Arnaldo Carvalho de Melo
2016-07-19 17:45                             ` Arnaldo Carvalho de Melo
2016-07-19 23:21                               ` Stephen Rothwell
2016-07-19 23:53                                 ` Stephen Rothwell
2016-07-20  2:52                                   ` Arnaldo Carvalho de Melo
2016-07-20  2:57                                     ` Andy Lutomirski
2016-07-20  3:09                                       ` Arnaldo Carvalho de Melo
2016-07-20  3:18                                         ` Stephen Rothwell
2016-07-20 23:29                                     ` Stephen Rothwell
2016-07-21 13:12                                       ` Arnaldo Carvalho de Melo
2016-07-21 23:23                                         ` Stephen Rothwell
2016-07-22  3:41                                           ` Josh Poimboeuf
2016-07-22 14:37                                             ` Arnaldo Carvalho de Melo
2016-07-22 19:19                                               ` Josh Poimboeuf
2016-07-22 19:36                                                 ` Arnaldo Carvalho de Melo
2016-07-22 19:44                                                   ` Josh Poimboeuf
2016-07-22 19:57                                                     ` Arnaldo Carvalho de Melo
2016-07-23  5:08                                                       ` Stephen Rothwell
2016-07-24 18:40                                                         ` Andy Lutomirski
2016-07-25 12:56                                                         ` Arnaldo Carvalho de Melo
2016-07-25 18:12                                                         ` [tip:perf/core] x86: Make the vdso2c compiler use the host architecture headers tip-bot for Stephen Rothwell
2016-07-25 18:11                                                 ` [tip:perf/core] tools build: Fix objtool build with ARCH=x86_64 tip-bot for Josh Poimboeuf
2016-07-25 18:11                                             ` [tip:perf/core] objtool: Always use host headers tip-bot for Arnaldo Carvalho de Melo
2016-07-16 20:46   ` [tip:perf/core] tools: Simplify BITS_PER_LONG define tip-bot for Peter Zijlstra

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=20160715154326.GC2523@redhat.com \
    --to=acme@redhat.com \
    --cc=acme@kernel.org \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=sfr@canb.auug.org.au \
    --cc=tglx@linutronix.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).