• Linus Torvalds's avatar
    Merge tag 'sched-core-2021-08-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5d3c0db4
    Linus Torvalds authored
    Pull scheduler updates from Ingo Molnar:
    
     - The biggest change in this cycle is scheduler support for asymmetric
       scheduling affinity, to support the execution of legacy 32-bit tasks
       on AArch32 systems that also have 64-bit-only CPUs.
    
       Architectures can fill in this functionality by defining their own
       task_cpu_possible_mask(p). When this is done, the scheduler will make
       sure the task will only be scheduled on CPUs that support it.
    
       (The actual arm64 specific changes are not part of this tree.)
    
       For other architectures there will be no change in functionality.
    
     - Add cgroup SCHED_IDLE support
    
     - Increase node-distance flexibility & delay determining it until a CPU
       is brought online. (This enables platforms where node distance isn't
       final until the CPU is only.)
    
     - Deadline scheduler enhancements & fixes
    
     - Misc fixes & cleanups.
    
    * tag 'sched-core-2021-08-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)
      eventfd: Make signal recursion protection a task bit
      sched/fair: Mark tg_is_idle() an inline in the !CONFIG_FAIR_GROUP_SCHED case
      sched: Introduce dl_task_check_affinity() to check proposed affinity
      sched: Allow task CPU affinity to be restricted on asymmetric systems
      sched: Split the guts of sched_setaffinity() into a helper function
      sched: Introduce task_struct::user_cpus_ptr to track requested affinity
      sched: Reject CPU affinity changes based on task_cpu_possible_mask()
      cpuset: Cleanup cpuset_cpus_allowed_fallback() use in select_fallback_rq()
      cpuset: Honour task_cpu_possible_mask() in guarantee_online_cpus()
      cpuset: Don't use the cpu_possible_mask as a last resort for cgroup v1
      sched: Introduce task_cpu_possible_mask() to limit fallback rq selection
      sched: Cgroup SCHED_IDLE support
      sched/topology: Skip updating masks for non-online nodes
      sched: Replace deprecated CPU-hotplug functions.
      sched: Skip priority checks with SCHED_FLAG_KEEP_PARAMS
      sched: Fix UCLAMP_FLAG_IDLE setting
      sched/deadline: Fix missing clock update in migrate_task_rq_dl()
      sched/fair: Avoid a second scan of target in select_idle_cpu
      sched/fair: Use prev instead of new target as recent_used_cpu
      sched: Don't report SCHED_FLAG_SUGOV in sched_getattr()
      ...
    5d3c0db4
fair.c 308 KB