{"id":"CVE-2022-49098","state":"PUBLISHED","title":"Drivers: hv: vmbus: Fix potential crash on module unload","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nDrivers: hv: vmbus: Fix potential crash on module unload\n\nThe vmbus driver relies on the panic notifier infrastructure to perform\nsome operations when a panic event is detected. Since vmbus can be built\nas module, it is required that the driver handles both registering and\nunregistering such panic notifier callback.\n\nAfter commit 74347a99e73a (\"x86/Hyper-V: Unload vmbus channel in hv panic callback\")\nthough, the panic notifier registration is done unconditionally in the module\ninitialization routine whereas the unregistering procedure is conditionally\nguarded and executes only if HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE capability\nis set.\n\nThis patch fixes that by unconditionally unregistering the panic notifier\nin the module's exit routine as well.","publishedAt":"2025-02-26T01:54:50.073Z","updatedAt":"2026-05-23T15:21:35.955Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"5e059fc0f054309036d3f612bc8b0a502ca58545","status":"affected","lessThan":"6b4c0149a56147b29169e07000d566162892722a","versionType":"git"},{"version":"9f38f7b46de0747c1909e8c557aa21715dce20c5","status":"affected","lessThan":"2133c422a103cf7c7768c37b9ac382e73b691892","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"cf580d2e3884dbafd6b90269b03a24d661578624","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"dcd6b1a624c0ffa21034d8b1e02e9d068458f596","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"5ea98d0f5f035c1bcf1517ccec0e024ae35a48b2","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"3d0078f8bddd58d9bb1ad40bbe929f8633abb276","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"792f232d57ff28bbd5f9c4abe0466b23d5879dc8","versionType":"git"},{"version":"caeeb3787167c884b955404a7e669fd77f267e44","status":"affected","versionType":"git"},{"version":"4.19.118","status":"affected","lessThan":"4.19.238","versionType":"semver"},{"version":"5.4.35","status":"affected","lessThan":"5.4.189","versionType":"semver"},{"version":"5.6.7","status":"affected","lessThan":"5.7","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/hv/vmbus_drv.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.7","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.7","versionType":"semver"},{"version":"4.19.238","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.189","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.111","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.34","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.16.20","status":"unaffected","lessThanOrEqual":"5.16.*","versionType":"semver"},{"version":"5.17.3","status":"unaffected","lessThanOrEqual":"5.17.*","versionType":"semver"},{"version":"5.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/hv/vmbus_drv.c"]}],"references":["https://git.kernel.org/stable/c/6b4c0149a56147b29169e07000d566162892722a","https://git.kernel.org/stable/c/2133c422a103cf7c7768c37b9ac382e73b691892","https://git.kernel.org/stable/c/cf580d2e3884dbafd6b90269b03a24d661578624","https://git.kernel.org/stable/c/dcd6b1a624c0ffa21034d8b1e02e9d068458f596","https://git.kernel.org/stable/c/5ea98d0f5f035c1bcf1517ccec0e024ae35a48b2","https://git.kernel.org/stable/c/3d0078f8bddd58d9bb1ad40bbe929f8633abb276","https://git.kernel.org/stable/c/792f232d57ff28bbd5f9c4abe0466b23d5879dc8"],"weaknesses":[],"ingestedAt":"2026-10-29T20:05:26.763Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2022/49xxx/CVE-2022-49098.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-49098","state":"PUBLISHED","datePublished":"2025-02-26T01:54:50.073Z","dateUpdated":"2026-05-23T15:21:35.955Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-02-26T01:49:39.250Z"},"containers":{"cna":{"title":"Drivers: hv: vmbus: Fix potential crash on module unload","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nDrivers: hv: vmbus: Fix potential crash on module unload\n\nThe vmbus driver relies on the panic notifier infrastructure to perform\nsome operations when a panic event is detected. Since vmbus can be built\nas module, it is required that the driver handles both registering and\nunregistering such panic notifier callback.\n\nAfter commit 74347a99e73a (\"x86/Hyper-V: Unload vmbus channel in hv panic callback\")\nthough, the panic notifier registration is done unconditionally in the module\ninitialization routine whereas the unregistering procedure is conditionally\nguarded and executes only if HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE capability\nis set.\n\nThis patch fixes that by unconditionally unregistering the panic notifier\nin the module's exit routine as well."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"5e059fc0f054309036d3f612bc8b0a502ca58545","status":"affected","lessThan":"6b4c0149a56147b29169e07000d566162892722a","versionType":"git"},{"version":"9f38f7b46de0747c1909e8c557aa21715dce20c5","status":"affected","lessThan":"2133c422a103cf7c7768c37b9ac382e73b691892","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"cf580d2e3884dbafd6b90269b03a24d661578624","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"dcd6b1a624c0ffa21034d8b1e02e9d068458f596","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"5ea98d0f5f035c1bcf1517ccec0e024ae35a48b2","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"3d0078f8bddd58d9bb1ad40bbe929f8633abb276","versionType":"git"},{"version":"74347a99e73ae00b8385f1209aaea193c670f901","status":"affected","lessThan":"792f232d57ff28bbd5f9c4abe0466b23d5879dc8","versionType":"git"},{"version":"caeeb3787167c884b955404a7e669fd77f267e44","status":"affected","versionType":"git"},{"version":"4.19.118","status":"affected","lessThan":"4.19.238","versionType":"semver"},{"version":"5.4.35","status":"affected","lessThan":"5.4.189","versionType":"semver"},{"version":"5.6.7","status":"affected","lessThan":"5.7","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/hv/vmbus_drv.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.7","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.7","versionType":"semver"},{"version":"4.19.238","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.189","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.111","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.34","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.16.20","status":"unaffected","lessThanOrEqual":"5.16.*","versionType":"semver"},{"version":"5.17.3","status":"unaffected","lessThanOrEqual":"5.17.*","versionType":"semver"},{"version":"5.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/hv/vmbus_drv.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/6b4c0149a56147b29169e07000d566162892722a"},{"url":"https://git.kernel.org/stable/c/2133c422a103cf7c7768c37b9ac382e73b691892"},{"url":"https://git.kernel.org/stable/c/cf580d2e3884dbafd6b90269b03a24d661578624"},{"url":"https://git.kernel.org/stable/c/dcd6b1a624c0ffa21034d8b1e02e9d068458f596"},{"url":"https://git.kernel.org/stable/c/5ea98d0f5f035c1bcf1517ccec0e024ae35a48b2"},{"url":"https://git.kernel.org/stable/c/3d0078f8bddd58d9bb1ad40bbe929f8633abb276"},{"url":"https://git.kernel.org/stable/c/792f232d57ff28bbd5f9c4abe0466b23d5879dc8"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-23T15:21:35.955Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.19.118","versionEndExcluding":"4.19.238"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.35","versionEndExcluding":"5.4.189"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.10.111"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.15.34"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.16.20"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.17.3"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.18"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6.7"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}