Messages in this thread |  | | Subject | Re: [PATCH 1/4 v4] sched/pelt: Move pelt related code in a dedicated file | From | Dietmar Eggemann <> | Date | Sun, 15 Apr 2018 15:27:59 +0200 |
| |
On 04/15/2018 02:16 PM, Vincent Guittot wrote: > On 15 April 2018 at 13:58, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote: >> On 03/16/2018 12:25 PM, Vincent Guittot wrote: >>> >>> We want to track rt_rq's utilization as a part of the estimation of the >>> whole rq's utilization. This is necessary because rt tasks can steal >>> utilization to cfs tasks and make them lighter than they are. >>> As we want to use the same load tracking mecanism for both and prevent >>> useless dependency between cfs and rt code, pelt code is moved in a >>> dedicated file. >> >> >> This would mean that we introduce function calls into the cfs scheduler >> fast-path, something we avoided so far (e.g. the cpu and frequency >> invariance hooks). Are we OK with that? >> >> Quentin mentioned this already during v3 review back in December. > > Yes and I hadn't seen any differences in the code size with the patch > which should have been the case if inline function where replaced by > function call
I see a diff (e.g. for arm64 defconfig):
6d626e0aaf91 - (HEAD -> tip/sched/core_rt_rq_util_tracking) sched/nohz: monitor rt utilization (2018-04-15 Vincent Guittot) 3111c6206f0c - cpufreq/schedutil: add rt utilization tracking (2018-04-15 Vincent Guittot) 62e103d266ed - sched/rt: add rt_rq utilization tracking (2018-04-15 Vincent Guittot) 8f78fef6b1a2 - sched/pelt: Move pelt related code in a dedicated file (2018-04-15 Vincent Guittot) 31e77c93e432 - (tip/sched/core_rt_rq_util_tracking_base) sched/fair: Update blocked load when newly idle (2018-03-09 Vincent Guittot)
deggeman-mac:/opt/git/kernel_org:tip/sched/core_rt_rq_util_tracking$ size vmlinux text data bss dec hex filename 11286856 6154896 410296 17852048 1106690 vmlinux
versus:
31e77c93e432 - (HEAD -> tip/sched/core_rt_rq_util_tracking_base) sched/fair: Update blocked load when ne$ ly idle (2018-03-09 Vincent Guittot)
deggeman-mac:/opt/git/kernel_org:tip/sched/core_rt_rq_util_tracking_base$ size vmlinux text data bss dec hex filename
11295048 6154896 410296 17860240 1108690 vmlinux
So I assume that in kernel/sched/fair.o:
U __update_load_avg_blocked_se U __update_load_avg_cfs_rq U __update_load_avg_se
are function calls now.
|  |