Re: [rfc patch v4.4-rt2] sched: fix up preempt lazy forward port

From: Sebastian Andrzej Siewior
Date: Fri Jan 22 2016 - 07:54:57 EST


On 01/22/2016 12:58 PM, Grygorii Strashko wrote:
> On 01/18/2016 10:18 PM, Sebastian Andrzej Siewior wrote:
>> * Mike Galbraith | 2016-01-18 10:08:23 [+0100]:
>>
>>> --- a/arch/x86/entry/common.c
>>> +++ b/arch/x86/entry/common.c
>>> @@ -220,14 +220,14 @@ long syscall_trace_enter(struct pt_regs
>>>
>>> #define EXIT_TO_USERMODE_LOOP_FLAGS \
>>> (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
>>> - _TIF_NEED_RESCHED | _TIF_USER_RETURN_NOTIFY)
>>> + _TIF_NEED_RESCHED_MASK | _TIF_USER_RETURN_NOTIFY)
>>
>> If I read this right, the loop where this define is used
>> _TIF_ALLWORK_MASK in v4.1 of which _TIF_NEED_RESCHED_MASK was part of.
>> Adding this will reassmeble the old behaviour.
>> â
>
> Just a question (sorry if dumb). ARM has _TIF_WORK_MASK defined:
> #define _TIF_WORK_MASK (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
> _TIF_NOTIFY_RESUME | _TIF_UPROBE)
>
> which is used to calculate loop exit condition in
> do_work_pending() (arch/arm/kernel/signal.c).
>
> Should _TIF_WORK_MASK also contain _TIF_NEED_RESCHED_LAZY?

Yes, and arm64 lacks the same bits.

Sebastian