• Ingo Molnar's avatar
    sched/headers: Introduce kernel/sched/build_utility.c and build multiple .c files there · 801c1419
    Ingo Molnar authored
    Collect all utility functionality source code files into a single kernel/sched/build_utility.c file,
    via #include-ing the .c files:
    
        kernel/sched/clock.c
        kernel/sched/completion.c
        kernel/sched/loadavg.c
        kernel/sched/swait.c
        kernel/sched/wait_bit.c
        kernel/sched/wait.c
    
    CONFIG_CPU_FREQ:
        kernel/sched/cpufreq.c
    
    CONFIG_CPU_FREQ_GOV_SCHEDUTIL:
        kernel/sched/cpufreq_schedutil.c
    
    CONFIG_CGROUP_CPUACCT:
        kernel/sched/cpuacct.c
    
    CONFIG_SCHED_DEBUG:
        kernel/sched/debug.c
    
    CONFIG_SCHEDSTATS:
        kernel/sched/stats.c
    
    CONFIG_SMP:
       kernel/sched/cpupri.c
       kernel/sched/stop_task.c
       kernel/sched/topology.c
    
    CONFIG_SCHED_CORE:
       kernel/sched/core_sched.c
    
    CONFIG_PSI:
       kernel/sched/psi.c
    
    CONFIG_MEMBARRIER:
       kernel/sched/membarrier.c
    
    CONFIG_CPU_ISOLATION:
       kernel/sched/isolation.c
    
    CONFIG_SCHED_AUTOGROUP:
       kernel/sched/autogroup.c
    
    The goal is to amortize the 60+ KLOC header bloat from over a dozen build units into
    a single build unit.
    
    The build time of build_utility.c also roughly matches the build time of core.c and
    fair.c - allowing better load-balancing of scheduler-only rebuilds.
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    Reviewed-by: default avatarPeter Zijlstra <peterz@infradead.org>
    801c1419
isolation.c 6.26 KB