cmpxchg() in recent kernels
alex at gai.ru
Mon Oct 25 18:37:58 EDT 2010
On Mon, 2010-10-25 at 23:07 +0200, Kristoffer Ericson wrote:
> On Mon, Oct 25, 2010 at 12:33:49PM +1100, Aras Vaichas wrote:
> > On 25 October 2010 09:08, Russell King - ARM Linux
> > <linux at arm.linux.org.uk> wrote:
> > >
> > > On Sun, Oct 24, 2010 at 11:43:38PM +0200, Kristoffer Ericson wrote:
> > > > Im seeing something similiar, using GCC 3.4.5
> > > > ARM HP Jornada 720, 2.6.36
> > snip ...
> > > > kernel/built-in.o(.text+0x1d038): In function `alloc_pid':
> > > > include/asm-generic/cmpxchg-local.h:42: undefined reference to `wrong_size_cmpxchg'
> > > > make: *** [.tmp_vmlinux1] Error 1
> > >
> > > Probably needs to be bisected, but I think in the long run we'll have
> > > to accept that gcc 4 will become the minimum compiler version.
> > I just tested a build with GCC 4.2.3 and it linked correctly. The only
> > problem is that the kernel image size is now 3x as big.
> Im using a GCC 4.2.2 here and Im not seeing those issues, size
> is pretty much exactly the same. Just FYI.
Since I've switched from gcc 3.4.3 to gcc 4.4.1, problem with cmpxchg()
disappeared. And yes, size for my config is pretty much the same as
before, about 1.2-1.4mb.
More information about the linux-arm-kernel