Skip to content

Commit 64b4c41

Browse files
committed
ipc/msg.c: fix percpu_counter use after free
These percpu counters are referenced in free_ipcs->freeque, so destroy them later. Fixes: 72d1e61 ("ipc/msg: mitigate the lock contention with percpu counter") Reported-by: [email protected] Tested-by: Mark Rutland <[email protected]> Cc: Jiebin Sun <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
1 parent 27d676a commit 64b4c41

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

ipc/msg.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1329,11 +1329,11 @@ int msg_init_ns(struct ipc_namespace *ns)
13291329
#ifdef CONFIG_IPC_NS
13301330
void msg_exit_ns(struct ipc_namespace *ns)
13311331
{
1332-
percpu_counter_destroy(&ns->percpu_msg_bytes);
1333-
percpu_counter_destroy(&ns->percpu_msg_hdrs);
13341332
free_ipcs(ns, &msg_ids(ns), freeque);
13351333
idr_destroy(&ns->ids[IPC_MSG_IDS].ipcs_idr);
13361334
rhashtable_destroy(&ns->ids[IPC_MSG_IDS].key_ht);
1335+
percpu_counter_destroy(&ns->percpu_msg_bytes);
1336+
percpu_counter_destroy(&ns->percpu_msg_hdrs);
13371337
}
13381338
#endif
13391339

0 commit comments

Comments
 (0)