{"dataType":"CVE_RECORD","dataVersion":"5.1","cveMetadata":{"cveId":"CVE-2022-49192","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-02-26T01:49:39.287Z","datePublished":"2025-02-26T01:55:38.609Z","dateUpdated":"2025-05-04T08:31:58.822Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2025-05-04T08:31:58.822Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrivers: ethernet: cpsw: fix panic when interrupt coaleceing is set via ethtool\n\ncpsw_ethtool_begin directly returns the result of pm_runtime_get_sync\nwhen successful.\npm_runtime_get_sync returns -error code on failure and 0 on successful\nresume but also 1 when the device is already active. So the common case\nfor cpsw_ethtool_begin is to return 1. That leads to inconsistent calls\nto pm_runtime_put in the call-chain so that pm_runtime_put is called\none too many times and as result leaving the cpsw dev behind suspended.\n\nThe suspended cpsw dev leads to an access violation later on by\ndifferent parts of the cpsw driver.\n\nFix this by calling the return-friendly pm_runtime_resume_and_get\nfunction."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ti/cpsw_ethtool.c"],"versions":[{"version":"d43c65b05b848e0b2db1a6c78b02c189da3a95b5","lessThan":"585dc196a08fccdcd1b7fcf473cf566b34c4b840","status":"affected","versionType":"git"},{"version":"d43c65b05b848e0b2db1a6c78b02c189da3a95b5","lessThan":"459080fab12b23c0526026e5cedbf3fabb5457cc","status":"affected","versionType":"git"},{"version":"d43c65b05b848e0b2db1a6c78b02c189da3a95b5","lessThan":"30ad11bff021a94aff6dab1ec9236fdfd884fbff","status":"affected","versionType":"git"},{"version":"d43c65b05b848e0b2db1a6c78b02c189da3a95b5","lessThan":"2844e2434385819f674d1fb4130c308c50ba681e","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ti/cpsw_ethtool.c"],"versions":[{"version":"5.15","status":"affected"},{"version":"0","lessThan":"5.15","status":"unaffected","versionType":"semver"},{"version":"5.15.33","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"5.16.19","lessThanOrEqual":"5.16.*","status":"unaffected","versionType":"semver"},{"version":"5.17.2","lessThanOrEqual":"5.17.*","status":"unaffected","versionType":"semver"},{"version":"5.18","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.15.33"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.16.19"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.17.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.18"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/585dc196a08fccdcd1b7fcf473cf566b34c4b840"},{"url":"https://git.kernel.org/stable/c/459080fab12b23c0526026e5cedbf3fabb5457cc"},{"url":"https://git.kernel.org/stable/c/30ad11bff021a94aff6dab1ec9236fdfd884fbff"},{"url":"https://git.kernel.org/stable/c/2844e2434385819f674d1fb4130c308c50ba681e"}],"title":"drivers: ethernet: cpsw: fix panic when interrupt coaleceing is set via ethtool","x_generator":{"engine":"bippy-1.2.0"}}}}