)]}'
{
  "commit": "39b5ef791d109dd54c7c2e6e87933edfcc0ad1ac",
  "tree": "dd62954fdbba8052fac1065f6085fdf33b996186",
  "parents": [
    "1bf67c8fdbda21fadd564a12dbe2b13c1ea5eda7"
  ],
  "author": {
    "name": "Waiman Long",
    "email": "longman@redhat.com",
    "time": "Thu May 08 15:24:13 2025 -0400"
  },
  "committer": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Fri May 09 07:35:14 2025 -1000"
  },
  "message": "cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks\n\nCommit ec5fbdfb99d1 (\"cgroup/cpuset: Enable update_tasks_cpumask()\non top_cpuset\") enabled us to pull CPUs dedicated to child partitions\nfrom tasks in top_cpuset by ignoring per cpu kthreads. However, there\ncan be other kthreads that are not per cpu but have PF_NO_SETAFFINITY\nflag set to indicate that we shouldn\u0027t mess with their CPU affinity.\nFor other kthreads, their affinity will be changed to skip CPUs dedicated\nto child partitions whether it is an isolating or a scheduling one.\n\nAs all the per cpu kthreads have PF_NO_SETAFFINITY set, the\nPF_NO_SETAFFINITY tasks are essentially a superset of per cpu kthreads.\nFix this issue by dropping the kthread_is_per_cpu() check and checking\nthe PF_NO_SETAFFINITY flag instead.\n\nFixes: ec5fbdfb99d1 (\"cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset\")\nSigned-off-by: Waiman Long \u003clongman@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfrederic@kernel.org\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "306b60430091452e4ddd263a5aed9aee79ab3417",
      "old_mode": 33188,
      "old_path": "kernel/cgroup/cpuset.c",
      "new_id": "24b70ea3e6ce97295a165b0476027eb347d06de0",
      "new_mode": 33188,
      "new_path": "kernel/cgroup/cpuset.c"
    }
  ]
}
