It might happen that some hyp SynIC pages aren't IO mapped. Use memunmap() that checks for that and only then calls iounmap()
Signed-off-by: Roman Kisel <rom...@linux.microsoft.com> --- drivers/hv/hv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c index 6a4857def82d..9a66656d89e0 100644 --- a/drivers/hv/hv.c +++ b/drivers/hv/hv.c @@ -358,7 +358,7 @@ void hv_synic_disable_regs(unsigned int cpu) */ simp.simp_enabled = 0; if (ms_hyperv.paravisor_present || hv_root_partition()) { - iounmap(hv_cpu->hyp_synic_message_page); + memunmap(hv_cpu->hyp_synic_message_page); hv_cpu->hyp_synic_message_page = NULL; } else { simp.base_simp_gpa = 0; @@ -370,7 +370,7 @@ void hv_synic_disable_regs(unsigned int cpu) siefp.siefp_enabled = 0; if (ms_hyperv.paravisor_present || hv_root_partition()) { - iounmap(hv_cpu->hyp_synic_event_page); + memunmap(hv_cpu->hyp_synic_event_page); hv_cpu->hyp_synic_event_page = NULL; } else { siefp.base_siefp_gpa = 0; -- 2.43.0