From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: linux-next: Tree for Jun 21 Date: Tue, 21 Jun 2016 19:06:07 +0200 Message-ID: <20160621170607.GQ30154@twins.programming.kicks-ass.net> References: <20160621154638.1169904b@canb.auug.org.au> <5768E650.2080506@gmail.com> <20160621124247.GM30921@twins.programming.kicks-ass.net> <5ed77f4c-44eb-ca02-1373-e878d3dea31e@mellanox.com> <20160621140408.GE3704@worktop> <20160621141435.GB7381@worktop> <94270f5c-1a28-f9d7-2b5a-eb874dc35398@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <94270f5c-1a28-f9d7-2b5a-eb874dc35398@mellanox.com> Sender: linux-kernel-owner@vger.kernel.org To: Chris Metcalf Cc: Sudip Mukherjee , Stephen Rothwell , linux-next@vger.kernel.org, Ingo Molnar , linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org List-Id: linux-next.vger.kernel.org On Tue, Jun 21, 2016 at 11:26:19AM -0400, Chris Metcalf wrote: > On 6/21/2016 10:14 AM, Peter Zijlstra wrote: > >On Tue, Jun 21, 2016 at 04:04:08PM +0200, Peter Zijlstra wrote: > >>>I'm not sure who builds the toolchains, but tilepro is in upstream gcc/binutils/etc > >>>so should be easy enough to include. There's also a cross-toolchain for x64 I put > >>>up a while ago [1] that you could grab if you wanted to try it. > >>I usually build my own set -- and just did. But tilepro was not > >>included. Lemme go do so. > >binutils-2_26-branch builds for tilepro-linux > >gcc-6-branch does _not_ build for tilepro-linux > > I figured I would take a stab at diagnosing this myself, and it looks like the > toolchain build assumes that the kernel headers have already been installed > and therefore we have available. This actually seems like > a reasonable prerequisite for building the toolchain. I'm guessing you > don't? Should you? Or perhaps the compiler shouldn't make that assumption? I can build: ls -la /opt/cross/bin/*-gcc | wc -l 27 compilers without installing kernel headers. > This has been true since gcc 4.x when tilepro support was first added. > > In any case if you replace the #include with > > #define __NR_FAST_cmpxchg -1 > #define __NR_FAST_atomic_update -2 > #define __NR_FAST_cmpxchg64 -3 > > that should also probably fix it, though I haven't tested it. It probably > wouldn't be crazy to just put those #defines directly in tilepro's atomic.h, > since it's not like those fast system call numbers will ever change. OK, I'll go test that right after I've got the kid in bed .. I'll let you know.