2023-03-18 03:31:47

by Li kunyu

[permalink] [raw]
Subject: [PATCH] sched: core: Optimize the structure of 'tg_cfs_schedulable_down' function

Optimize if branches and define in the branch statement
block parent_quota variable.

Signed-off-by: Li kunyu <[email protected]>
---
kernel/sched/core.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 488655f2319f..7e8535d2e36d 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -10915,15 +10915,12 @@ static int tg_cfs_schedulable_down(struct task_group *tg, void *data)
{
struct cfs_schedulable_data *d = data;
struct cfs_bandwidth *cfs_b = &tg->cfs_bandwidth;
- s64 quota = 0, parent_quota = -1;
+ s64 quota = RUNTIME_INF;

- if (!tg->parent) {
- quota = RUNTIME_INF;
- } else {
+ if (tg->parent) {
struct cfs_bandwidth *parent_b = &tg->parent->cfs_bandwidth;
-
+ s64 parent_quota = parent_b->hierarchical_quota;
quota = normalize_cfs_quota(tg, d);
- parent_quota = parent_b->hierarchical_quota;

/*
* Ensure max(child_quota) <= parent_quota. On cgroup2,
--
2.18.2



2023-03-20 22:48:44

by Benjamin Segall

[permalink] [raw]
Subject: Re: [PATCH] sched: core: Optimize the structure of 'tg_cfs_schedulable_down' function

Li kunyu <[email protected]> writes:

> Optimize if branches and define in the branch statement
> block parent_quota variable.

It's not an optimization; it is arguably a slight style improvement.

>
> Signed-off-by: Li kunyu <[email protected]>
> ---
> kernel/sched/core.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index 488655f2319f..7e8535d2e36d 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -10915,15 +10915,12 @@ static int tg_cfs_schedulable_down(struct task_group *tg, void *data)
> {
> struct cfs_schedulable_data *d = data;
> struct cfs_bandwidth *cfs_b = &tg->cfs_bandwidth;
> - s64 quota = 0, parent_quota = -1;
> + s64 quota = RUNTIME_INF;
>
> - if (!tg->parent) {
> - quota = RUNTIME_INF;
> - } else {
> + if (tg->parent) {
> struct cfs_bandwidth *parent_b = &tg->parent->cfs_bandwidth;
> -
> + s64 parent_quota = parent_b->hierarchical_quota;
> quota = normalize_cfs_quota(tg, d);
> - parent_quota = parent_b->hierarchical_quota;
>
> /*
> * Ensure max(child_quota) <= parent_quota. On cgroup2,