Extract from asm/system.h: 244 static inline unsigned long __cmpxchg(volatile void *ptr, unsigned long old, 245 unsigned long new, int size) 246 { I seem to remember that "new" is a keyword in c++ so using it as a variable name in a system header file is a silly idea. This prevents cdrdao (and presumably others) from compiling. Have replaced with _new in several places. Please post upstream.
Please send it upstream yourself. Although the answer will probably be no, since the kernel headers are not designed to be system software headers.
What header version?
Please reopen with requested info if problem still exists. At least on my system, that parameter is named _new