Re: [BUG] : kernel/built-in.o(.text+0x18db4):kernel/workqueue.c:823: undefined reference to `.L343'

From: Russell King - ARM Linux
Date: Fri Nov 02 2007 - 20:19:42 EST


On Sat, Nov 03, 2007 at 12:04:06AM -0700, Kristoffer Ericson wrote:
> On Fri, 2 Nov 2007 21:10:23 +0100
> Sam Ravnborg <sam@xxxxxxxxxxxx> wrote:
>
> > On Fri, Nov 02, 2007 at 07:48:18PM +0000, Russell King - ARM Linux wrote:
> > > On Fri, Nov 02, 2007 at 08:29:31PM -0700, Kristoffer Ericson wrote:
> > > > Greetings,
> > > >
> > > > Haven't found anyone reporting this. Taken from the very latest linux-2.6.git pull.
> > > >
> > > > dnsdomainname: Unknown host
> > > > UPD include/linux/compile.h
> > > > CC init/version.o
> > > > LD init/built-in.o
> > > > LD .tmp_vmlinux1
> > > > kernel/built-in.o(.text+0x18db0): In function `destroy_workqueue':
> > > > kernel/workqueue.c:823: undefined reference to `.L342'
> > > > kernel/built-in.o(.text+0x18db4):kernel/workqueue.c:823: undefined reference to `.L343'
> > > > make: *** [.tmp_vmlinux1] Error 1
> > >
> > > I think you'll have to look at the assembly produced for workqueue.c and
> > > work out why GCC is referencing an undefined label. You can get the
> > > assembly for that by doing:
> > >
> > > make ARCH=arm ...etc... kernel/workqueue.s
> > Or make that:
> >
> > make ARCH=arm ...etc... kernel/workqueue.lst
> >
> > to get intermixed C and assenbly
> >
> > Sam
> arm-unknown-linux-gnu- kernel/workqueue.1strrent:)$ make ARCH=arm CROSS_COMPILE=a
> make: *** No rule to make target `kernel/workqueue.1st'. Stop.

Suggest you use a better console font that allows you to identify
the difference between '1' (one) and 'l' (lima).

> arm-unknown-linux-gnu- kernel/workqueue.lstrrent:)$ make ARCH=arm CROSS_COMPILE=a
> CHK include/linux/version.h
> make[1]: `include/asm-arm/mach-types.h' is up to date.
> CHK include/linux/utsrelease.h
> CALL scripts/checksyscalls.sh
> <stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
> <stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
> <stdin>:1321:2: warning: #warning syscall pselect6 not implemented
> <stdin>:1325:2: warning: #warning syscall ppoll not implemented
> <stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
> MKLST kernel/workqueue.lst
> No System.map

You're not looking for a system.map file, but the workqueue.s or
workqueue.lst file to find out where this nonexistent label is
referenced.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/