From: Parth Shah <parth@linux.ibm.com>
To: linux-kernel@vger.kernel.org
Cc: peterz@infradead.org, mingo@redhat.com,
vincent.guittot@linaro.org, patrick.bellasi@matbug.net,
valentin.schneider@arm.com, qais.yousef@arm.com, pavel@ucw.cz,
dhaval.giani@oracle.com, qperret@qperret.net,
David.Laight@ACULAB.COM, pjt@google.com, tj@kernel.org,
dietmar.eggemann@arm.com
Subject: [PATCH v3 2/3] sched/core: Propagate parent task's latency requirements to the child task
Date: Thu, 16 Jan 2020 17:32:29 +0530 [thread overview]
Message-ID: <20200116120230.16759-3-parth@linux.ibm.com> (raw)
In-Reply-To: <20200116120230.16759-1-parth@linux.ibm.com>
Clone parent task's latency_nice attribute to the forked child task.
Reset the latency_nice value to default value when the child task is
set to sched_reset_on_fork.
Signed-off-by: Parth Shah <parth@linux.ibm.com>
Reviewed-by: Qais Yousef <qais.yousef@arm.com>
---
kernel/sched/core.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index e7b08d52db93..a7359836bf17 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -2854,6 +2854,9 @@ int sched_fork(unsigned long clone_flags, struct task_struct *p)
*/
p->prio = current->normal_prio;
+ /* Propagate the parent's latency requirements to the child as well */
+ p->latency_nice = current->latency_nice;
+
uclamp_fork(p);
/*
@@ -2870,6 +2873,7 @@ int sched_fork(unsigned long clone_flags, struct task_struct *p)
p->prio = p->normal_prio = __normal_prio(p);
set_load_weight(p, false);
+ p->latency_nice = DEFAULT_LATENCY_NICE;
/*
* We don't need the reset flag anymore after the fork. It has
* fulfilled its duty:
--
2.17.2
next prev parent reply other threads:[~2020-01-16 12:02 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-16 12:02 [PATCH v3 0/3] Introduce per-task latency_nice for scheduler hints Parth Shah
2020-01-16 12:02 ` [PATCH v3 1/3] sched: Introduce latency-nice as a per-task attribute Parth Shah
2020-01-16 12:02 ` Parth Shah [this message]
2020-01-16 12:02 ` [PATCH v3 3/3] sched: Allow sched_{get,set}attr to change latency_nice of the task Parth Shah
2020-02-17 8:57 ` [PATCH v3 0/3] Introduce per-task latency_nice for scheduler hints Parth Shah
2020-02-18 23:00 ` chris hyser
2020-02-19 10:09 ` Parth Shah
2020-02-19 14:15 ` chris hyser
2020-02-19 18:23 ` chris hyser
2020-02-20 8:34 ` Parth Shah
2020-02-20 8:50 ` Parth Shah
2020-02-20 14:30 ` chris hyser
2020-02-20 15:03 ` Qais Yousef
2020-02-20 16:34 ` chris hyser
2020-02-21 9:29 ` Qais Yousef
2020-02-21 10:01 ` Parth Shah
2020-02-21 16:51 ` chris hyser
2020-02-21 17:08 ` chris hyser
2020-02-21 17:52 ` chris hyser
2020-02-19 11:18 ` David Laight
2020-02-19 17:16 ` chris hyser
2020-02-20 14:39 ` David Laight
2020-02-20 15:55 ` chris hyser
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200116120230.16759-3-parth@linux.ibm.com \
--to=parth@linux.ibm.com \
--cc=David.Laight@ACULAB.COM \
--cc=dhaval.giani@oracle.com \
--cc=dietmar.eggemann@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=patrick.bellasi@matbug.net \
--cc=pavel@ucw.cz \
--cc=peterz@infradead.org \
--cc=pjt@google.com \
--cc=qais.yousef@arm.com \
--cc=qperret@qperret.net \
--cc=tj@kernel.org \
--cc=valentin.schneider@arm.com \
--cc=vincent.guittot@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.