lkml.org 
[lkml]   [2006]   [Dec]   [7]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateThu, 7 Dec 2006 14:42:28 +0900
FromPaul Mundt <>
Subjectworkqueue cmpxchg() breakage
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.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-12-07 05:45    [from the cache]
©2003-2008