@@ -123,7 +123,6 @@ struct Stats {
123123 eoi_level : Counter ,
124124 spurious_eoi : Counter ,
125125 lazy_eoi : Counter ,
126- lint1 : Counter ,
127126 interrupt : Counter ,
128127 nmi : Counter ,
129128 extint : Counter ,
@@ -231,8 +230,7 @@ struct WorkFlags {
231230 sipi_vector : u8 ,
232231 extint : bool ,
233232 nmi : bool ,
234- lint1 : bool ,
235- #[ bits( 19 ) ]
233+ #[ bits( 20 ) ]
236234 _rsvd : u32 ,
237235}
238236
@@ -442,23 +440,13 @@ impl LocalApicSet {
442440 // Don't know how to manage remote IRR.
443441 return ;
444442 }
445- if lint_index == 1 {
446- slot. request_lint1 (
447- DeliveryMode ( lvt. delivery_mode ( ) ) ,
448- lvt. vector ( ) ,
449- lvt. trigger_mode_level ( ) ,
450- false ,
451- wake,
452- ) ;
453- } else {
454- slot. request_interrupt (
455- DeliveryMode ( lvt. delivery_mode ( ) ) ,
456- lvt. vector ( ) ,
457- lvt. trigger_mode_level ( ) ,
458- false ,
459- wake,
460- ) ;
461- }
443+ slot. request_interrupt (
444+ DeliveryMode ( lvt. delivery_mode ( ) ) ,
445+ lvt. vector ( ) ,
446+ lvt. trigger_mode_level ( ) ,
447+ false ,
448+ wake,
449+ ) ;
462450 }
463451 }
464452 }
@@ -1235,38 +1223,6 @@ impl SharedState {
12351223 _ => false ,
12361224 }
12371225 }
1238-
1239- /// Returns true if the VP should be woken up to scan the APIC.
1240- #[ must_use]
1241- fn request_lint1 (
1242- & self ,
1243- software_enabled : bool ,
1244- delivery_mode : DeliveryMode ,
1245- vector : u8 ,
1246- level_triggered : bool ,
1247- auto_eoi : bool ,
1248- ) -> bool {
1249- match delivery_mode {
1250- DeliveryMode :: NMI => {
1251- let old = self
1252- . work
1253- . fetch_update ( Ordering :: Release , Ordering :: Relaxed , |w| {
1254- Some ( WorkFlags :: from ( w) . with_lint1 ( true ) . into ( ) )
1255- } )
1256- . unwrap ( ) ;
1257- old == 0
1258- }
1259- _ => {
1260- return self . request_interrupt (
1261- software_enabled,
1262- delivery_mode,
1263- vector,
1264- level_triggered,
1265- auto_eoi,
1266- ) ;
1267- }
1268- }
1269- }
12701226}
12711227
12721228impl MutableGlobalState {
@@ -1327,29 +1283,6 @@ impl ApicSlot {
13271283 }
13281284 }
13291285 }
1330-
1331- fn request_lint1 (
1332- & self ,
1333- delivery_mode : DeliveryMode ,
1334- vector : u8 ,
1335- level_triggered : bool ,
1336- auto_eoi : bool ,
1337- wake : impl FnOnce ( VpIndex ) ,
1338- ) {
1339- if let Some ( shared) = & self . shared {
1340- if self . hardware_enabled
1341- && shared. request_lint1 (
1342- self . software_enabled ,
1343- delivery_mode,
1344- vector,
1345- level_triggered,
1346- auto_eoi,
1347- )
1348- {
1349- wake ( shared. vp_index ) ;
1350- }
1351- }
1352- }
13531286}
13541287
13551288/// Work to do as a result of [`LocalApic::scan`] or [`LocalApic::flush`].
@@ -1372,8 +1305,6 @@ pub struct ApicWork {
13721305 pub extint : bool ,
13731306 /// An NMI was requested.
13741307 pub nmi : bool ,
1375- /// LINT1 was requested.
1376- pub lint1 : bool ,
13771308 /// A fixed interrupt was requested.
13781309 ///
13791310 /// Call [`LocalApic::acknowledge_interrupt`] after it has been injected.
@@ -1643,10 +1574,6 @@ impl LocalApic {
16431574 self . stats . nmi . increment ( ) ;
16441575 r. nmi = true ;
16451576 }
1646- if work. lint1 ( ) {
1647- self . stats . lint1 . increment ( ) ;
1648- r. lint1 = true ;
1649- }
16501577 if work. extint ( ) {
16511578 self . stats . extint . increment ( ) ;
16521579 r. extint = true ;
0 commit comments