On Tue, Mar 14, 2023 at 04:22:06PM -0400, Waiman Long <longman@xxxxxxxxxx> wrote:
Some arm64 systems can have asymmetric CPUs where certain tasks are onlyAh, I'm catching up.
runnable on a selected subset of CPUs.
This information is not captured in the cpuset. As a result,I can see that historically, there was an approach of terminating
task_cpu_possible_mask() may return a mask that have no overlap with
effective_cpus causing new_cpus to become empty.
unaccomodable tasks:
94f9c00f6460 ("arm64: Remove logic to kill 32-bit tasks on 64-bit-only cores")
the removal of killing had been made possible with
df950811f4a8 ("arm64: Prevent offlining first CPU with 32-bit EL0 on mismatched system").
That gives two other alternatives to affinity modification:
2) kill such tasks (not unlike OOM upon memory.max reduction),
3) reject cpuset reduction (violates cgroup v2 delegation).
What do you think about 2)?