On Tue, Jul 15, 2025 at 6:16 AM Roman Kisel <romank@xxxxxxxxxxxxxxxxxxx> wrote: > > It might happen that some hyp SynIC pages aren't allocated. > > Check for that and only then call iounmap(). > > Signed-off-by: Roman Kisel <romank@xxxxxxxxxxxxxxxxxxx> > --- > drivers/hv/hv.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c > index 820711e954d1..a8669843c56e 100644 > --- a/drivers/hv/hv.c > +++ b/drivers/hv/hv.c > @@ -367,8 +367,10 @@ 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); > - hv_cpu->hyp_synic_message_page = NULL; > + if (hv_cpu->hyp_synic_message_page) { > + iounmap(hv_cpu->hyp_synic_message_page); > + hv_cpu->hyp_synic_message_page = NULL; > + } > } else { > simp.base_simp_gpa = 0; > } > @@ -379,8 +381,10 @@ 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); > - hv_cpu->hyp_synic_event_page = NULL; > + if (hv_cpu->hyp_synic_event_page) { > + iounmap(hv_cpu->hyp_synic_event_page); > + hv_cpu->hyp_synic_event_page = NULL; > + } > } else { > siefp.base_siefp_gpa = 0; > } > -- > 2.43.0 > > Reviewed-by: Tianyu Lan <tiala@xxxxxxxxxxxxx> -- Thanks Tianyu Lan