Re: [patch V2 25/50] signal: Confine POSIX_TIMERS properly

From: Thomas Gleixner
Date: Fri Apr 19 2024 - 01:43:19 EST


On Thu, Apr 18 2024 at 17:23, Oleg Nesterov wrote:
> On 04/11, Thomas Gleixner wrote:
>> +static inline void posixtimer_rearm_itimer(struct task_struct *p) { }
>> +static inline void posixtimer_rearm(struct kernel_siginfo *info) { }
>
> Do we really need these 2 nops ? please see below.

>> + if (unlikely(signr == SIGALRM))
>> + posixtimer_rearm_itimer(tsk);
>
> ...
>
>> + if (IS_ENABLED(CONFIG_POSIX_TIMERS)) {
>> + if (unlikely(resched_timer))
>> + posixtimer_rearm(info);
>> }
>
> This looks a bit inconsistent to me.
>
> Can't we change the callsite of posixtimer_rearm_itimer() to check
> IS_ENABLED(CONFIG_POSIX_TIMERS) too,
>
> if (IS_ENABLED(CONFIG_POSIX_TIMERS)) {
> if (unlikely(signr == SIGALRM))
> posixtimer_rearm_itimer(tsk);
> }
> ?
>
> This will make the code more symmetrical, and we can avoid the dumb
> definitions of posixtimer_rearm_itimer/posixtimer_rearm.

Yes, we just need to expose the actual function prototypes
unconditionally. Let me fix that.

Thanks,

tglx