diff options
| author | Jork Loeser <jloeser@linux.microsoft.com> | 2026-04-27 14:38:54 -0700 |
|---|---|---|
| committer | Wei Liu <wei.liu@kernel.org> | 2026-04-29 22:56:53 +0000 |
| commit | 6e55a8d9f21bcb238596bdd8092c92e74c698a3d (patch) | |
| tree | 9d3b5cd11e185035e82575c2b176e65088bc60ea /Documentation/userspace-api/media/cec/git@git.tavy.me:linux.git | |
| parent | efe0fb8c3fe2b996522f7418fd311eeff43c1148 (diff) | |
mshv: unmap debugfs stats pages on kexec
On L1VH, debugfs stats pages are overlay pages: the kernel allocates
them and registers the GPAs with the hypervisor via
HVCALL_MAP_STATS_PAGE2. These overlay mappings persist in the
hypervisor across kexec. If the kexec'd kernel reuses those physical
pages, the hypervisor's overlay semantics cause a machine check
exception.
Fix this by calling mshv_debugfs_exit() from the reboot notifier,
which issues HVCALL_UNMAP_STATS_PAGE for each mapped stats page before
kexec. This releases the overlay bindings so the physical pages can be
safely reused. Guard mshv_debugfs_exit() against being called when
init failed.
Signed-off-by: Jork Loeser <jloeser@linux.microsoft.com>
Reviewed-by: Anirudh Rayabharam (Microsoft) <anirudh@anirudhrb.com>
Reviewed-by: Stanislav Kinsburskii <skinsburskii@linux.microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Diffstat (limited to 'Documentation/userspace-api/media/cec/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions
