ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM
In the Linux kernel, the following vulnerability has been resolved: ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM The probe function puts the device into the runtime PM active state with only the "iis" bus clock enabled, but it also sets priv->op_clk to the parent of the RCLK_SRC mux without enabling it. The runtime PM suspend callback disables both clocks, so the first runtime suspend after probe disables op_clk once more than it was enabled. On Exynos5250 Arndale both clocks resolve to the same EXYNOS_I2S_BUS gate, so this triggers the following warning during boot: WARNING: drivers/clk/clk.c:1270 at clk_core_disable+0xe4/0x23c, CPU#0: kworker/u8:3/45 i2s_bus already disabled ... Workqueue: pm pm_runtime_work Call trace: ... clk_core_disable from clk_disable+0x28/0x34 clk_disable from i2s_runtime_suspend+0x58/0x68 [snd_soc_i2s] i2s_runtime_suspend [snd_soc_i2s] from genpd_runtime_suspend+0xc4/0x298 genpd_runtime_suspend from __rpm_callback+0x48/0x18c __rpm_callback from rpm_callback+0x4c/0x50 rpm_callback from rpm_suspend+0xf4/0x718 rpm_suspend from pm_runtime_work+0x9c/0xa0 ... Fix this by enabling op_clk in probe right after getting it, so the clock state matches the runtime PM active state, and by disabling it in remove.
- Products
- Linux
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-99089
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 30 Oct 2026, 10:25 UTC · Revision 1
Source evidence
ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM
core-cve · Original sourcePublished 26 Oct 2026, 14:51 UTC
In the Linux kernel, the following vulnerability has been resolved: ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM The probe function puts the device into the runtime PM active state with only the "iis" bus clock enabled, but it also sets priv->op_clk to the parent of the RCLK_SRC mux without enabling it. The runtime PM suspend callback disables both clocks, so the first runtime suspend after probe disables op_clk once more than it was enabled. On Exynos5250 Arndale both clocks resolve to the same EXYNOS_I2S_BUS gate, so this triggers the following warning during boot: WARNING: drivers/clk/clk.c:1270 at clk_core_disable+0xe4/0x23c, CPU#0: kworker/u8:3/45 i2s_bus already disabled ... Workqueue: pm pm_runtime_work Call trace: ... clk_core_disable from clk_disable+0x28/0x34 clk_disable from i2s_runtime_suspend+0x58/0x68 [snd_soc_i2s] i2s_runtime_suspend [snd_soc_i2s] from genpd_runtime_suspend+0xc4/0x298 genpd_runtime_suspend from __rpm_callback+0x48/0x18c __rpm_callback from rpm_callback+0x4c/0x50 rpm_callback from rpm_suspend+0xf4/0x718 rpm_suspend from pm_runtime_work+0x9c/0xa0 ... Fix this by enabling op_clk in probe right after getting it, so the clock state matches the runtime PM active state, and by disabling it in remove.
cve:CVE-2026-99089
Linux
Fixed versions: Not specified
Linux
Fixed versions: Not specified
Complete source record
{
"id": "e1593f10f04463d7fa0aa24e98b56efc7f8a68c0a6d37b9b1cb1a35d8834d1b8",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-99089",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM",
"summary": "In the Linux kernel, the following vulnerability has been resolved: ASoC: samsung: i2s: enable op_clk in probe to balance runtime PM The probe function puts the device into the runtime PM active state with only the \"iis\" bus clock enabled, but it also sets priv->op_clk to the parent of the RCLK_SRC mux without enabling it. The runtime PM suspend callback disables both clocks, so the first runtime suspend after probe disables op_clk once more than it was enabled. On Exynos5250 Arndale both clocks resolve to the same EXYNOS_I2S_BUS gate, so this triggers the following warning during boot: WARNING: drivers/clk/clk.c:1270 at clk_core_disable+0xe4/0x23c, CPU#0: kworker/u8:3/45 i2s_bus already disabled ... Workqueue: pm pm_runtime_work Call trace: ... clk_core_disable from clk_disable+0x28/0x34 clk_disable from i2s_runtime_suspend+0x58/0x68 [snd_soc_i2s] i2s_runtime_suspend [snd_soc_i2s] from genpd_runtime_suspend+0xc4/0x298 genpd_runtime_suspend from __rpm_callback+0x48/0x18c __rpm_callback from rpm_callback+0x4c/0x50 rpm_callback from rpm_suspend+0xf4/0x718 rpm_suspend from pm_runtime_work+0x9c/0xa0 ... Fix this by enabling op_clk in probe right after getting it, so the clock state matches the runtime PM active state, and by disabling it in remove.",
"evidence": "cve:CVE-2026-99089",
"products": [
{
"name": {
"value": "Linux",
"evidence": "/containers/cna/affected/0/product"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
},
{
"name": {
"value": "Linux",
"evidence": "/containers/cna/affected/1/product"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2026-99089",
"aliases": [
"CVE-2026-99089"
],
"metrics": [],
"affected": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "48279c53fd1d09dc0d1b6ebb9f21732c507cea0b",
"lessThan": "2c64c30d493d82d5edc95811cede0083e1195822",
"versionType": "git"
},
{
"status": "affected",
"version": "48279c53fd1d09dc0d1b6ebb9f21732c507cea0b",
"lessThan": "5dac6bf09b5a4fff2433629801309c3884c3e94a",
"versionType": "git"
},
{
"status": "affected",
"version": "48279c53fd1d09dc0d1b6ebb9f21732c507cea0b",
"lessThan": "64bb35079dcbc67901da1fe8c52c234cbcd17df3",
"versionType": "git"
},
{
"status": "affected",
"version": "48279c53fd1d09dc0d1b6ebb9f21732c507cea0b",
"lessThan": "a728c12f8bd89947894e227d0f4f83a895ac9ab7",
"versionType": "git"
},
{
"status": "affected",
"version": "48279c53fd1d09dc0d1b6ebb9f21732c507cea0b",
"lessThan": "7529254014764ae0b8c33d5c61a58f36c65b1a1c",
"versionType": "git"
}
],
"programFiles": [
"sound/soc/samsung/i2s.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.17"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "4.17",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.6.160",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.113",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.57",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.2.11",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
},
{
"status": "unaffected",
"version": "7.3",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"sound/soc/samsung/i2s.c"
],
"defaultStatus": "affected"
}
],
"modified": "2026-10-26T14:51:59.055Z",
"provider": "cve",
"references": [
"https://git.kernel.org/stable/c/2c64c30d493d82d5edc95811cede0083e1195822",
"https://git.kernel.org/stable/c/5dac6bf09b5a4fff2433629801309c3884c3e94a",
"https://git.kernel.org/stable/c/64bb35079dcbc67901da1fe8c52c234cbcd17df3",
"https://git.kernel.org/stable/c/a728c12f8bd89947894e227d0f4f83a895ac9ab7",
"https://git.kernel.org/stable/c/7529254014764ae0b8c33d5c61a58f36c65b1a1c"
],
"provider_metadata": {
"cna": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-10-26T14:51:59.055Z"
}
}
},
"related_cves": [
{
"value": "CVE-2026-99089",
"evidence": "/cveMetadata/cveId"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-cve",
"document_id": 311607,
"published_at": "2026-10-26T14:51:59.055+00:00"
}