Messages in this thread Patch in this message | | | Date | Wed, 21 Feb 2018 18:24:07 +0530 | From | gaurav jindal <> | Subject | [PATCH]sched: completion: use bool in try_wait_for_completion |
| |
Variable ret in try_wait_for_completion can have only true/false values. Since the return type of the function is also bool, variable ret should have data type as bool in place of int. Moreover, the size of bool in many platforms is 1 byte whereas size of int is 4 bytes(though architecture dependent). Modifying the data type reduces the size consumed for the stack.
Signed-off-by: Gaurav Jindal<gauravjindal1104@gmail.com>
---
diff --git a/kernel/sched/completion.c b/kernel/sched/completion.c index 0926aef..3e15e8d 100644 --- a/kernel/sched/completion.c +++ b/kernel/sched/completion.c @@ -283,7 +283,7 @@ int __sched wait_for_completion_killable(struct completion *x) bool try_wait_for_completion(struct completion *x) { unsigned long flags; - int ret = 1; + bool ret = true;
/* * Since x->done will need to be locked only @@ -292,11 +292,11 @@ bool try_wait_for_completion(struct completion *x) * return early in the blocking case. */ if (!READ_ONCE(x->done)) - return 0; + return false;
spin_lock_irqsave(&x->wait.lock, flags); if (!x->done) - ret = 0; + ret = false; else if (x->done != UINT_MAX) x->done--; spin_unlock_irqrestore(&x->wait.lock, flags);
| |