[SRU][J][PATCH 0/5][v4] kernel hard lockup in cgroups during eBPF workload

Philip Cox philip.cox at canonical.com
Thu Feb 13 19:55:48 UTC 2025


BugLink: https://bugs.launchpad.net/bugs/2089318

SRU Justification:

[Impact]

There is a kernel hard lockup where all CPUs are stuck acquiring an already-locked spinlock (css_set_lock) within the cgroup subsystem when the user is running a certain eBPF program.

This has been hit in focal 5.15 backport kernels.

[Fix]
The bug was introduced in 5.15 via commit 74e4b956eb1c and fixed in 5.16 via 46307fd6e27a.


[Test Plan]

This change has been tested by the LP user maxwolffe who opened the ticket and helped with the investigation.

I have also run the cgroup selftests on this kernel to test it.


[Where problems could occur]

Further upstream stable changes to the cgroup code may cause merge conflicts, but this should be mitigated as I indent to try to upstream these changes to the upstream stable kernel.


v2: added prerequisite commits
v3: Added more prerequisite commits to reduce context changes
v4: change to patches 2/5 and 5/5 due to code review comments
--


Lin Feng (1):
  cgroup.c: add helper __cset_cgroup_from_root to cleanup duplicated
    codes

Michal Koutný (3):
  cgroup: cgroup: Honor caller's cgroup NS when resolving cgroup id
  cgroup: Homogenize cgroup_get_from_id() return value
  cgroup: Reorganize css_set_lock and kernfs path processing

Tejun Heo (1):
  cgroup: Make cgroup_get_from_id() prettier

 include/linux/blk-cgroup.h |   4 +-
 include/linux/cgroup.h     |   5 --
 kernel/cgroup/cgroup.c     | 112 ++++++++++++++++++++++---------------
 3 files changed, 70 insertions(+), 51 deletions(-)

-- 
2.43.0




More information about the kernel-team mailing list