On Sun, Nov 10, 2019 at 12:07 AM Ondrej Mosnacek <omosnace@xxxxxxxxxx> wrote: > > On Sat, Nov 9, 2019 at 10:03 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > > > On Sat, Nov 9, 2019 at 2:43 PM Ondrej Mosnacek <omosnace@xxxxxxxxxx> wrote: > > > > > > -struct itimerval; > > > > -extern int do_setitimer(int which, struct itimerval *value, > > > > - struct itimerval *ovalue); > > > > -extern int do_getitimer(int which, struct itimerval *value); > > > > +#ifdef CONFIG_POSIX_TIMERS > > > > +extern void clear_itimer(void); > > > > +#else > > > > +static inline void clear_itimer(void) {} > > > > +#endif > > > > > > > > > > @@ -249,6 +249,17 @@ int do_setitimer(int which, struct itimerval *value, struct itimerval *ovalue) > > > > return 0; > > > > } > > > > > > > > +#ifdef CONFIG_SECURITY_SELINUX > > > > > > Did you mean "#ifdef CONFIG_POSIX_TIMERS" here to match the header? > > > > No, this part is intentional, CONFIG_POSIX_TIMERS already controls > > whether itimer.c is > > compiled in the first place, but this function is only needed when called from > > the selinux driver. > > All right, but you declare the function in time.h even if > CONFIG_SECURITY_SELINUX is not enabled... it is kind of awkward when > it can happen that the function is declared but not defined anywhere > (even if it shouldn't be used by new users). Maybe you could at least > put the header declaration/definition inside #ifdef > CONFIG_SECURITY_SELINUX as well so it is clear that this function is > intended for SELinux only? I don't see that as a problem, we rarely put declarations inside of an #ifdef. The main effect that would have is forcing any file that includes linux/time.h to be rebuilt when selinux is turned on or off in the .config. Arnd