Re: [PATCH v6 1/9] kernel: Support TIF_SYSCALL_INTERCEPT flag

From: Gabriel Krisman Bertazi
Date: Fri Sep 11 2020 - 16:08:58 EST


peterz@xxxxxxxxxxxxx writes:

> On Fri, Sep 04, 2020 at 04:31:39PM -0400, Gabriel Krisman Bertazi wrote:
>> +static inline void __set_tsk_syscall_intercept(struct task_struct *tsk,
>> + unsigned int type)
>> +{
>> + tsk->syscall_intercept |= type;
>> +
>> + if (tsk->syscall_intercept)
>> + set_tsk_thread_flag(tsk, TIF_SYSCALL_INTERCEPT);
>> +}
>
> Did the above want to be:
>
> unsigned int old = tsk->syscall_intercept;
> tsk->syscall_intercept |= type;
> if (!old)
> set_tsk_thread_flag(tsk, TIF_SYSCALL_INTERCEPT)
>

Hi Peter,

Thanks for the review!

I'm not sure this change gains us anything. For now,
__set_tsk_syscall_intercept cannot be called with !type, so both
versions behave the same, but my version is safe with that scenario.
This won't be called frequent enough for the extra calls to
set_tsk_thread_flag matter. Am I missing something?

Thanks,

--
Gabriel Krisman Bertazi