2024-02-13 05:57:35

by Ankur Arora

[permalink] [raw]
Subject: [PATCH 04/30] sched: make test_*_tsk_thread_flag() return bool

All users of test_*_tsk_thread_flag() treat the result as boolean.
This is also true for the underlying test_and_*_bit() operations.

Change the return type to bool.

Cc: Peter Ziljstra <[email protected]>
Originally-by: Thomas Gleixner <[email protected]>
Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/
Signed-off-by: Ankur Arora <[email protected]>
---
include/linux/sched.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/include/linux/sched.h b/include/linux/sched.h
index 7a22a56350bb..e790860d89c3 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1933,17 +1933,17 @@ static inline void update_tsk_thread_flag(struct task_struct *tsk, int flag,
update_ti_thread_flag(task_thread_info(tsk), flag, value);
}

-static inline int test_and_set_tsk_thread_flag(struct task_struct *tsk, int flag)
+static inline bool test_and_set_tsk_thread_flag(struct task_struct *tsk, int flag)
{
return test_and_set_ti_thread_flag(task_thread_info(tsk), flag);
}

-static inline int test_and_clear_tsk_thread_flag(struct task_struct *tsk, int flag)
+static inline bool test_and_clear_tsk_thread_flag(struct task_struct *tsk, int flag)
{
return test_and_clear_ti_thread_flag(task_thread_info(tsk), flag);
}

-static inline int test_tsk_thread_flag(struct task_struct *tsk, int flag)
+static inline bool test_tsk_thread_flag(struct task_struct *tsk, int flag)
{
return test_ti_thread_flag(task_thread_info(tsk), flag);
}
@@ -1958,7 +1958,7 @@ static inline void clear_tsk_need_resched(struct task_struct *tsk)
clear_tsk_thread_flag(tsk,TIF_NEED_RESCHED);
}

-static inline int test_tsk_need_resched(struct task_struct *tsk)
+static inline bool test_tsk_need_resched(struct task_struct *tsk)
{
return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED));
}
--
2.31.1



2024-02-14 14:12:55

by Mark Rutland

[permalink] [raw]
Subject: Re: [PATCH 04/30] sched: make test_*_tsk_thread_flag() return bool

On Mon, Feb 12, 2024 at 09:55:28PM -0800, Ankur Arora wrote:
> All users of test_*_tsk_thread_flag() treat the result as boolean.
> This is also true for the underlying test_and_*_bit() operations.
>
> Change the return type to bool.
>
> Cc: Peter Ziljstra <[email protected]>
> Originally-by: Thomas Gleixner <[email protected]>
> Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/
> Signed-off-by: Ankur Arora <[email protected]>

Acked-by: Mark Rutland <[email protected]>

I think this makes sense on its own regardless of the rest of the series; it
might make sense to move it to the start of the series so that it can easily be
picked up even if the rest needs work.

Mark.

> ---
> include/linux/sched.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/linux/sched.h b/include/linux/sched.h
> index 7a22a56350bb..e790860d89c3 100644
> --- a/include/linux/sched.h
> +++ b/include/linux/sched.h
> @@ -1933,17 +1933,17 @@ static inline void update_tsk_thread_flag(struct task_struct *tsk, int flag,
> update_ti_thread_flag(task_thread_info(tsk), flag, value);
> }
>
> -static inline int test_and_set_tsk_thread_flag(struct task_struct *tsk, int flag)
> +static inline bool test_and_set_tsk_thread_flag(struct task_struct *tsk, int flag)
> {
> return test_and_set_ti_thread_flag(task_thread_info(tsk), flag);
> }
>
> -static inline int test_and_clear_tsk_thread_flag(struct task_struct *tsk, int flag)
> +static inline bool test_and_clear_tsk_thread_flag(struct task_struct *tsk, int flag)
> {
> return test_and_clear_ti_thread_flag(task_thread_info(tsk), flag);
> }
>
> -static inline int test_tsk_thread_flag(struct task_struct *tsk, int flag)
> +static inline bool test_tsk_thread_flag(struct task_struct *tsk, int flag)
> {
> return test_ti_thread_flag(task_thread_info(tsk), flag);
> }
> @@ -1958,7 +1958,7 @@ static inline void clear_tsk_need_resched(struct task_struct *tsk)
> clear_tsk_thread_flag(tsk,TIF_NEED_RESCHED);
> }
>
> -static inline int test_tsk_need_resched(struct task_struct *tsk)
> +static inline bool test_tsk_need_resched(struct task_struct *tsk)
> {
> return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED));
> }
> --
> 2.31.1
>

2024-02-15 02:05:00

by Ankur Arora

[permalink] [raw]
Subject: Re: [PATCH 04/30] sched: make test_*_tsk_thread_flag() return bool


Mark Rutland <[email protected]> writes:

> On Mon, Feb 12, 2024 at 09:55:28PM -0800, Ankur Arora wrote:
>> All users of test_*_tsk_thread_flag() treat the result as boolean.
>> This is also true for the underlying test_and_*_bit() operations.
>>
>> Change the return type to bool.
>>
>> Cc: Peter Ziljstra <[email protected]>
>> Originally-by: Thomas Gleixner <[email protected]>
>> Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/
>> Signed-off-by: Ankur Arora <[email protected]>
>
> Acked-by: Mark Rutland <[email protected]>

Thanks.

> I think this makes sense on its own regardless of the rest of the series; it
> might make sense to move it to the start of the series so that it can easily be
> picked up even if the rest needs work.

Yeah that makes sense. Will do.

--
ankur