Re: WAW and RAW warnings in kernel build
>>>>> On Thu, 7 Aug 2003 12:34:09 +1000, Peter Chubb <peter@chubb.wattle.id.au> said:
Peter> The main *other* class of warning is the one caued by the `dummy'
Peter> arguments to system calls used in the kernel.
Peter> arch/ia64/kernel/process.c: In function `kernel_thread':
Peter> include/asm/unistd.h:341: warning: `dummy3' might be used uninitialized in this function
Peter> include/asm/unistd.h:341: warning: `dummy4' might be used uninitialized in this function
Peter> include/asm/unistd.h:341: warning: `dummy5' might be used
Peter> uninitialized in this function
Peter> There doesn't seem to be a way around those, either. GCC doesn't have
Peter> an `__attribute__ ((uninitialised))'
Peter> And it seems a little silly to initialise these placeholder variables.
Perhaps we could just get rid of all that syscall-inlining ugliness
alltogether and turn the handful of syscalls needed by the kernel into
proper stubs. On ia64, the syscall-inlines have never been used for
user-land and I don't think there are any performance critical uses
inside the kernel.
In fact, all kernel syscalls except for execve & clone, we can simply
call the corresponding kernel routine, like is done in
asm-alpha/unistd.h (this will even be faster than the inlined-stubs).
clone()/execve() are easiest to handle via a proper syscall, because
otherwise you'd have to setup the pt-regs structure etc. by hand.
--david
Reply to: