File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -499,6 +499,10 @@ static int aia_hgei_init(void)
499
499
hgctrl -> free_bitmap = 0 ;
500
500
}
501
501
502
+ /* Skip SGEI interrupt setup for zero guest external interrupts */
503
+ if (!kvm_riscv_aia_nr_hgei )
504
+ goto skip_sgei_interrupt ;
505
+
502
506
/* Find INTC irq domain */
503
507
domain = irq_find_matching_fwnode (riscv_get_intc_hwnode (),
504
508
DOMAIN_BUS_ANY );
@@ -522,11 +526,16 @@ static int aia_hgei_init(void)
522
526
return rc ;
523
527
}
524
528
529
+ skip_sgei_interrupt :
525
530
return 0 ;
526
531
}
527
532
528
533
static void aia_hgei_exit (void )
529
534
{
535
+ /* Do nothing for zero guest external interrupts */
536
+ if (!kvm_riscv_aia_nr_hgei )
537
+ return ;
538
+
530
539
/* Free per-CPU SGEI interrupt */
531
540
free_percpu_irq (hgei_parent_irq , & aia_hgei );
532
541
}
You can’t perform that action at this time.
0 commit comments