Re: [PATCH v3] ipc: Update semtimedop() to use hrtimer

From: Thomas Gleixner
Date: Thu Apr 28 2022 - 18:41:09 EST


On Thu, Apr 28 2022 at 22:23, Prakash Sangappa wrote:
>> On Apr 28, 2022, at 3:02 PM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>> On Thu, Apr 28 2022 at 13:50, Davidlohr Bueso wrote:
>>> On Thu, 28 Apr 2022, Prakash Sangappa wrote:
>>>> - if (timeout)
>>>> - jiffies_left = schedule_timeout(jiffies_left);
>>>> - else
>>>> - schedule();
>>>> + timed_out = !schedule_hrtimeout_range(exp,
>>>> + current->timer_slack_ns, HRTIMER_MODE_ABS);
>>>
>>> I'm wondering if the slack parameter instead of passing the timer_slack_ns
>>> value immediately, we should do a rt_task() check and pass zero if so.
>>
>> We should have a wrapper function which takes care of that instead of
>> having checks all over the place.
>
> Ok it can be an inline function in sched.h which returns appropriate
> slack time. Use that in futex_wait() and sigtimedwait() also in addition to
> semtimedop() & mqueue codepath?

No. What I meant is a function which handles this internally, not an inline
function which has to be invoked on various call sites.

> Should that be a separate patch?

Definitely. That's an orthogonal problem.

Thanks,

tglx