@@ -426,12 +426,19 @@ impl VirtioInterrupt for IrqTrigger {
426
426
}
427
427
}
428
428
429
+ impl Default for IrqTrigger {
430
+ fn default ( ) -> Self {
431
+ Self :: new ( )
432
+ }
433
+ }
434
+
429
435
impl IrqTrigger {
430
- pub fn new ( ) -> std :: io :: Result < Self > {
431
- Ok ( Self {
436
+ pub fn new ( ) -> Self {
437
+ Self {
432
438
irq_status : Arc :: new ( AtomicU32 :: new ( 0 ) ) ,
433
- irq_evt : EventFd :: new ( libc:: EFD_NONBLOCK ) ?,
434
- } )
439
+ irq_evt : EventFd :: new ( libc:: EFD_NONBLOCK )
440
+ . expect ( "Could not create EventFd for IrqTrigger" ) ,
441
+ }
435
442
}
436
443
437
444
pub fn trigger_irq ( & self , irq_type : IrqType ) -> Result < ( ) , std:: io:: Error > {
@@ -570,7 +577,7 @@ pub(crate) mod tests {
570
577
#[ test]
571
578
fn test_new ( ) {
572
579
let m = single_region_mem ( 0x1000 ) ;
573
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
580
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
574
581
let mut dummy = DummyDevice :: new ( ) ;
575
582
// Validate reset is no-op.
576
583
assert ! ( dummy. reset( ) . is_none( ) ) ;
@@ -603,7 +610,7 @@ pub(crate) mod tests {
603
610
#[ test]
604
611
fn test_bus_device_read ( ) {
605
612
let m = single_region_mem ( 0x1000 ) ;
606
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
613
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
607
614
let mut d = MmioTransport :: new (
608
615
m,
609
616
interrupt,
@@ -699,7 +706,7 @@ pub(crate) mod tests {
699
706
#[ allow( clippy:: cognitive_complexity) ]
700
707
fn test_bus_device_write ( ) {
701
708
let m = single_region_mem ( 0x1000 ) ;
702
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
709
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
703
710
let dummy_dev = Arc :: new ( Mutex :: new ( DummyDevice :: new ( ) ) ) ;
704
711
let mut d = MmioTransport :: new ( m, interrupt, dummy_dev. clone ( ) , false ) ;
705
712
let mut buf = vec ! [ 0 ; 5 ] ;
@@ -862,7 +869,7 @@ pub(crate) mod tests {
862
869
#[ test]
863
870
fn test_bus_device_activate ( ) {
864
871
let m = single_region_mem ( 0x1000 ) ;
865
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
872
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
866
873
let mut d = MmioTransport :: new (
867
874
m,
868
875
interrupt,
@@ -947,7 +954,7 @@ pub(crate) mod tests {
947
954
#[ test]
948
955
fn test_bus_device_activate_failure ( ) {
949
956
let m = single_region_mem ( 0x1000 ) ;
950
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
957
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
951
958
let device = DummyDevice {
952
959
activate_should_error : true ,
953
960
..DummyDevice :: new ( )
@@ -1060,7 +1067,7 @@ pub(crate) mod tests {
1060
1067
#[ test]
1061
1068
fn test_bus_device_reset ( ) {
1062
1069
let m = single_region_mem ( 0x1000 ) ;
1063
- let interrupt = Arc :: new ( IrqTrigger :: new ( ) . unwrap ( ) ) ;
1070
+ let interrupt = Arc :: new ( IrqTrigger :: new ( ) ) ;
1064
1071
let mut d = MmioTransport :: new (
1065
1072
m,
1066
1073
interrupt,
@@ -1119,7 +1126,7 @@ pub(crate) mod tests {
1119
1126
1120
1127
#[ test]
1121
1128
fn irq_trigger ( ) {
1122
- let irq_trigger = IrqTrigger :: new ( ) . unwrap ( ) ;
1129
+ let irq_trigger = IrqTrigger :: new ( ) ;
1123
1130
assert_eq ! ( irq_trigger. irq_status. load( Ordering :: SeqCst ) , 0 ) ;
1124
1131
1125
1132
// Check that there are no pending irqs.
0 commit comments