** Description changed:

+ [ Impact ]
+ 
+ Commit 352ccf890a3e (KVM: s390: improve interrupt cpu for wakeup)
+ addresses a performance optimization in the KVM subsystem
+ for the s390 architecture, specifically concerning the selection
+ of target virtual CPUs (vCPUs) for floating interrupt delivery.
+ The modification changes the heuristic algorithm used to determine
+ which vCPU should be awakened when a floating interrupt arrives,
+ shifting from an idle-CPU-preference strategy to a
+ last-sleep-CPU-preference strategy.
+ This algorithmic change yields significant performance improvements
+ by reducing inter-processor interrupt overhead
+ and improving cache locality.
+ 
+ [ Fix ]
+ 
+ Backport 352ccf890a3e (KVM: s390: improve interrupt cpu for wakeup)
+ from mainline.
+ 
+ [ Test Plan ]
+ 
+ To test the patch it is possible to run I/O-intensive workloads
+ (fio, uperf) with varying vCPU configurations, on a s390x machine,
+ to ensure interrupt delivery remains correct without errors,
+ timeouts, or kernel warnings. Moreover, during I/O-intensive workloads
+ a performance improvement should be visible.
+ 
+ [ Regression Potential]
+ 
+ The patch modifies interrupt delivery heuristics within s390 KVM
+ but does not change core interrupt handling logic
+ or data structures significantly.
+ The primary risk is suboptimal vCPU selection in workload patterns
+ that differ from the tested scenarios (fio, uperf), potentially
+ causing performance regressions rather than functional failures.
+ 
+ ---
+ 
  352ccf890a3e91f58bc32503f9afdc161bc2c34a
  -------------------------
  
-               KVM: s390: improve interrupt cpu for wakeup
+               KVM: s390: improve interrupt cpu for wakeup
  
-               Turns out that picking an idle CPU for floating interrupts has 
some
-               negative side effects. The guest will keep the IO workload on 
its CPU
-               and rather use an IPI from the interrupt CPU instead of moving 
workload.
-               For example a guest with 2 vCPUs and 1 fio process might run 
that fio on
-               vcpu1. If after diag500 both vCPUs are idle then vcpu0 is woken 
up. The
-               guest will then do an IPI from vcpu0 to vcpu1.
+               Turns out that picking an idle CPU for floating interrupts has 
some
+               negative side effects. The guest will keep the IO workload on 
its CPU
+               and rather use an IPI from the interrupt CPU instead of moving 
workload.
+               For example a guest with 2 vCPUs and 1 fio process might run 
that fio on
+               vcpu1. If after diag500 both vCPUs are idle then vcpu0 is woken 
up. The
+               guest will then do an IPI from vcpu0 to vcpu1.
  
-               So lets change the heuristics and prefer the last CPU that went 
to
-               sleep. This one is likely still in halt polling and can be 
woken up
-               quickly.
+               So lets change the heuristics and prefer the last CPU that went 
to
+               sleep. This one is likely still in halt polling and can be 
woken up
+               quickly.
  
-               This patch shows significant improvements in terms of bandwidth 
or
-               cpu consumption for fio and uperf workloads and seems to be a 
net
-               win.
+               This patch shows significant improvements in terms of bandwidth 
or
+               cpu consumption for fio and uperf workloads and seems to be a 
net
+               win.
  
-               Link: 
https://lore.kernel.org/linux-s390/[email protected]/
-               Reviewed-by: Christoph Schlameu? <[email protected]>
-               Signed-off-by: Christian Borntraeger <[email protected]>
+               Link: 
https://lore.kernel.org/linux-s390/[email protected]/
+               Reviewed-by: Christoph Schlameu? <[email protected]>
+               Signed-off-by: Christian Borntraeger <[email protected]>

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2132317

Title:
  [UBUNTU 24.04] KVM: s390: improve interrupt cpu for wakeup

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-z-systems/+bug/2132317/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to