public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* workqueue cmpxchg() breakage
@ 2006-12-07  5:42 Paul Mundt
  0 siblings, 0 replies; only message in thread
From: Paul Mundt @ 2006-12-07  5:42 UTC (permalink / raw)
  To: David Howells; +Cc: linux-kernel

The changes in 365970a1ea76d81cb1ad2f652acb605f06dae256 result in
cmpxchg() being invoked with bogus sizes with gcc-4.1 on SH, particularly
when kernel/workqueue.c:set_wq_data() is left inlined:

  LD      .tmp_vmlinux1
kernel/built-in.o: In function `__cmpxchg':
/home/pmundt/devel/git/sh-2.6/include/asm/system.h:247: undefined reference to `__cmpxchg_called_with_bad_pointer'
make: *** [.tmp_vmlinux1] Error 1

If I add a handler for the u64 case, that catches one of the inlined
references, but the other call site generates something completely different,
it's garbage in either case.

Taking set_wq_data() out of line fixes this, but is likely not the right fix.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-12-07  5:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-07  5:42 workqueue cmpxchg() breakage Paul Mundt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox