On Tue, 21 Apr 2015, Arnd Bergmann wrote: > > COMPAT_SYSCALL_DEFINE2(timer_gettime, timer_t, timer_id, > > struct compat_itimerspec __user *, setting) > > As a side note, I want to kill off the get_fs()/set_fs() calls in > the process. These always make me dizzy when I try to work out whether > there is a potential security hole (there is not in this case), and > they can be slow on some architectures. Yeah. I have to take a deep breath every time I look at those :) > My preferred solution is one where we end up with the same syscalls > for both 32-bit and 64-bit, and basically use the > compat_sys_timer_gettime() implementation (or a simplified version) > for the existing , something like this: No objections from my side. I was not looking into the syscall magic yet. I just wanted to avoid the code churn and have the guts of the syscalls factored out for simple reusage. .... > Note the use of a separate __kernel_itimerspec64 for the user interface > here, which I think will be needed to hide the differences between the > normal itimerspec on 64-bit machines, and the new itimerspec on 32-bit > platforms that will be defined differently (using 'long long'). Confused. timespec64 / itimerspec64 should be the same independent of 64bit and 32bit. So why do we need another variant ? > I would also prefer not too many people to work on the syscalls, and > would rather have Baolin not touch any of the syscall prototypes for > the moment. I did not ask him to change any of the syscall prototypes. I just wanted him to split out the guts of the syscall into a seperate static function to avoid all that code churn. Thanks, tglx -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html