public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
* 5.10.225 stable kernel cgroup_mutex not held assertion failure
@ 2024-09-19  6:01 Greg Thelen
  2024-09-19  8:47 ` Fedor Pchelkin
  2024-09-23  8:50 ` 5.10.225 stable kernel cgroup_mutex not held assertion failure Sasha Levin
  0 siblings, 2 replies; 29+ messages in thread
From: Greg Thelen @ 2024-09-19  6:01 UTC (permalink / raw)
  To: Chen Ridong; +Cc: Tejun Heo, Shivani Agarwal, Greg Kroah-Hartman, stable

Linux stable v5.10.226 suffers a lockdep warning when accessing
/proc/PID/cpuset. cset_cgroup_from_root() is called without cgroup_mutex
is held, which causes assertion failure.

Bisect blames 5.10.225 commit 688325078a8b ("cgroup/cpuset: Prevent UAF
in proc_cpuset_show()"). I've have not easily reproduced the problem
that this change fixes, so I'm not sure if it's best to revert the fix
or adapt it to meet the 5.10 locking expectations.

The lockdep complaint:

$ cat /proc/1/cpuset
$ dmesg
[  198.744891] ------------[ cut here ]------------
[  198.744918] WARNING: CPU: 4 PID: 9301 at kernel/cgroup/cgroup.c:1395  
cset_cgroup_from_root+0xb2/0xd0
[  198.744957] RIP: 0010:cset_cgroup_from_root+0xb2/0xd0
[  198.744960] Code: 02 00 00 74 11 48 8b 09 48 39 cb 75 eb eb 19 49 83 c6  
10 4c 89 f0 48 85 c0 74 0d 5b 41 5e c3 48 8b 43 60 48 85 c0 75 f3 0f 0b  
<0f> 0b 83 3d 69 01 ee 01 00 0f 85 78 ff ff ff eb 8b 0f 0b eb 87 66
[  198.744962] RSP: 0018:ffffb492608a7ce8 EFLAGS: 00010046
[  198.744977] RAX: 0000000000000000 RBX: ffffffff8f4171b8 RCX:  
cc949de848c33e00
[  198.744979] RDX: 0000000000001000 RSI: ffffffff8f415450 RDI:  
ffff92e5417c4dc0
[  198.744981] RBP: ffff9303467e3f00 R08: 0000000000000008 R09:  
ffffffff9122d568
[  198.744983] R10: ffff92e5417c4380 R11: 0000000000000000 R12:  
ffff92e3d9506000
[  198.744984] R13: 0000000000000000 R14: ffff92e443a96000 R15:  
ffff92e3d9506000
[  198.744987] FS:  00007f15d94ed740(0000) GS:ffff9302bf500000(0000)  
knlGS:0000000000000000
[  198.744988] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  198.744990] CR2: 00007f15d94ca000 CR3: 00000002816ca003 CR4:  
00000000001706e0
[  198.744992] Call Trace:
[  198.744996]  ? __warn+0xcd/0x1c0
[  198.745000]  ? cset_cgroup_from_root+0xb2/0xd0
[  198.745008]  ? report_bug+0x87/0xf0
[  198.745015]  ? handle_bug+0x42/0x80
[  198.745017]  ? exc_invalid_op+0x16/0x70
[  198.745021]  ? asm_exc_invalid_op+0x12/0x20
[  198.745030]  ? cset_cgroup_from_root+0xb2/0xd0
[  198.745034]  ? cset_cgroup_from_root+0x28/0xd0
[  198.745038]  cgroup_path_ns_locked+0x23/0x50
[  198.745044]  proc_cpuset_show+0x115/0x210
[  198.745049]  proc_single_show+0x4a/0xa0
[  198.745056]  seq_read_iter+0x14d/0x400
[  198.745063]  seq_read+0x103/0x130
[  198.745074]  vfs_read+0xea/0x320
[  198.745078]  ? do_user_addr_fault+0x25b/0x390
[  198.745085]  ? do_user_addr_fault+0x25b/0x390
[  198.745090]  ksys_read+0x70/0xe0
[  198.745096]  do_syscall_64+0x2d/0x40
[  198.745099]  entry_SYSCALL_64_after_hwframe+0x61/0xcb

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2024-12-02 10:30 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-19  6:01 5.10.225 stable kernel cgroup_mutex not held assertion failure Greg Thelen
2024-09-19  8:47 ` Fedor Pchelkin
2024-09-19  8:51   ` [PATCH 5.10/5.15 1/2] cgroup: Make operations on the cgroup root_list RCU safe Fedor Pchelkin
2024-09-19  8:51     ` [PATCH 5.10/5.15 2/2] cgroup: Move rcu_head up near the top of cgroup_root Fedor Pchelkin
2024-09-19  9:26   ` 5.10.225 stable kernel cgroup_mutex not held assertion failure chenridong
2024-09-20  9:28   ` Shivani Agarwal
2024-10-30  7:29     ` Siddh Raman Pant
2024-11-06  6:10       ` gregkh
2024-11-06  6:24         ` Siddh Raman Pant
2024-11-20 14:46           ` Siddh Raman Pant
2024-11-20 14:58             ` gregkh
2024-11-20 17:47               ` Siddh Raman Pant
2024-11-28 10:40                 ` Siddh Raman Pant
2024-12-02  9:45                 ` gregkh
2024-12-02  9:59                   ` [PATCH 1/2] cgroup: Make operations on the cgroup root_list RCU safe Siddh Raman Pant
2024-12-02  9:59                     ` [PATCH 2/2] cgroup: Move rcu_head up near the top of cgroup_root Siddh Raman Pant
2024-12-02 10:01                     ` [PATCH 1/2] cgroup: Make operations on the cgroup root_list RCU safe Siddh Raman Pant
2024-12-02 10:06                       ` gregkh
2024-12-02 10:11                         ` Siddh Raman Pant
2024-12-02 10:11                           ` [PATCH 2/2] cgroup: Move rcu_head up near the top of cgroup_root Siddh Raman Pant
2024-12-02 10:17                           ` [PATCH 1/2] cgroup: Make operations on the cgroup root_list RCU safe Greg Kroah-Hartman
2024-12-02 10:26                             ` Siddh Raman Pant
2024-12-02 10:30                               ` gregkh
2024-09-20  9:29   ` [PATCH v4.19] " Shivani Agarwal
2024-09-20  9:29   ` [PATCH v4.19] cgroup: Move rcu_head up near the top of cgroup_root Shivani Agarwal
2024-09-20  9:30   ` [PATCH v5.4] cgroup: Make operations on the cgroup root_list RCU safe Shivani Agarwal
2024-09-20  9:33   ` [PATCH v5.4] cgroup: Move rcu_head up near the top of cgroup_root Shivani Agarwal
2024-09-23  8:50 ` 5.10.225 stable kernel cgroup_mutex not held assertion failure Sasha Levin
2024-09-29  0:42   ` Greg Thelen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox