{"id":5408,"date":"2026-09-04T18:47:48","date_gmt":"2026-09-04T10:47:48","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68283"},"modified":"2026-09-04T18:47:48","modified_gmt":"2026-09-04T10:47:48","slug":"cve-2026-68283","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68283","title":{"rendered":"CVE-2026-68283 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\ntracing: Fix use-afte"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tracing: Fix use-after-free freeing trigger private data<\/p>\n<p>Commit 61d445af0a7c (&#8220;tracing: Add bulk garbage collection of freeing<br \/>\nevent_trigger_data&#8221;) moved the kfree() of event_trigger_data to a kthread<br \/>\nthat runs tracepoint_synchronize_unregister() before freeing. That removed<br \/>\nthe synchronization the trigger .free callbacks used to get implicitly and<br \/>\ninline from trigger_data_free().<\/p>\n<p>event_hist_trigger_free(), event_hist_trigger_named_free() and<br \/>\nevent_enable_trigger_free() free their satellite data (hist_data, cmd_ops,<br \/>\nenable_data) right after trigger_data_free() returns. With the<br \/>\nsynchronization now deferred to the kthread, a concurrent tracepoint<br \/>\nhandler can still reach that data through the list_del_rcu()&#8217;d trigger,<br \/>\ncausing a use-after-free.<\/p>\n<p>The histogram teardown must stay synchronous: remove_hist_vars() and<br \/>\nunregister_field_var_hists() have to detach a synthetic event from the<br \/>\nhistogram before the trigger-removal write returns, otherwise a following<br \/>\ncommand races in and the synthetic-event removal fails with -EBUSY, as the<br \/>\ntrigger-synthetic-eprobe.tc selftest catches. Make those callbacks wait<br \/>\nwith the correct barrier &#8211; tracepoint_synchronize_unregister(), matching<br \/>\nthe free kthread &#8211; before freeing.<\/p>\n<p>The enable trigger has no such synchronous requirement, and a blocking<br \/>\nsynchronize there would re-serialize the path that commit deliberately<br \/>\ndeferred. Give it an optional private_data_free() callback that the free<br \/>\nkthread runs after its grace period, and free enable_data from there.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tracing: Fix use-after-free freeing trigger private data<\/p>\n<p>Commit 61d445af0a7c (&#8220;tracing: Add bulk garbage collection of freeing<br \/>\neve<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-5408","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/5408","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5408"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5408"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5408"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}