{"id":"AZL-51327","summary":"CVE-2022-48976 affecting package kernel 5.15.200.1-1","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: flowtable_offload: fix using __this_cpu_add in preemptible\n\nflow_offload_queue_work() can be called in workqueue without\nbh disabled, like the call trace showed in my act_ct testing,\ncalling NF_FLOW_TABLE_STAT_INC() there would cause a call\ntrace:\n\n  BUG: using __this_cpu_add() in preemptible [00000000] code: kworker/u4:0/138560\n  caller is flow_offload_queue_work+0xec/0x1b0 [nf_flow_table]\n  Workqueue: act_ct_workqueue tcf_ct_flow_table_cleanup_work [act_ct]\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x33/0x46\n   check_preemption_disabled+0xc3/0xf0\n   flow_offload_queue_work+0xec/0x1b0 [nf_flow_table]\n   nf_flow_table_iterate+0x138/0x170 [nf_flow_table]\n   nf_flow_table_free+0x140/0x1a0 [nf_flow_table]\n   tcf_ct_flow_table_cleanup_work+0x2f/0x2b0 [act_ct]\n   process_one_work+0x6a3/0x1030\n   worker_thread+0x8a/0xdf0\n\nThis patch fixes it by using NF_FLOW_TABLE_STAT_INC_ATOMIC()\ninstead in flow_offload_queue_work().\n\nNote that for FLOW_CLS_REPLACE branch in flow_offload_queue_work(),\nit may not be called in preemptible path, but it's good to use\nNF_FLOW_TABLE_STAT_INC_ATOMIC() for all cases in\nflow_offload_queue_work().","modified":"2026-04-01T05:20:44.882099Z","published":"2024-10-21T20:15:09Z","upstream":["CVE-2022-48976"],"references":[{"type":"WEB","url":"https://nvd.nist.gov/vuln/detail/CVE-2022-48976"}],"affected":[{"package":{"name":"kernel","ecosystem":"Azure Linux:2","purl":"pkg:rpm/azure-linux/kernel"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"5.15.200.1-1"}]}],"database_specific":{"source":"https://github.com/microsoft/AzureLinuxVulnerabilityData/blob/main/osv/AZL-51327.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}