You have been subscribed to a public bug:

Description:   kvm: floating interrupts may get stuck
Symptom:       Most prominently guest stuck in IPL.
Problem:       When trying to pick an idle cpu to process the
               interrupts we can end up messing up, and picking,
               for example a stopped vcpu, because we first look
               up an index form the kvm->arch.idle_mask and then
               use it to obtain a cpu using kvm_get_vcpu() The
               trouble is, we made kvm->arch.idle_mask to be
               indexed with cpu_id, while kvm_get_vcpu() expects
               a vcpu_idx. Hereby vcpu_id is an identifier that
               comes from userspace, while vcpu_idx'es are given
               away at vcpu creation FCFS. In practice QEMU does
               currently the creation of vcpus so that the two
               end up having the same value. That is why we did
               not notice this problem for years. 
Reproduction:  Make sure you cpu_id's and cpu_idx'es aren't the
               same, and try to IPL a guest. 

Solution:      Make kvm->arch.idle_mask cpu_idx based.
Upstream-ID:   a3e03bc1368c1bc16e19b001fc96dc7430573cc8

Date:          2021-09-09
Author:        Halil Pasic <pa...@linux.ibm.com>
Component:     kernel

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: Skipper Bug Screeners (skipper-screen-team)
         Status: New


** Tags: architecture-s39064 bugnameltc-195431 severity-high 
targetmilestone-inin---
-- 
[UBUNTU 20.04] kvm: floating interrupts may get stuck
https://bugs.launchpad.net/bugs/1951109
You received this bug notification because you are a member of Kernel Packages, 
which is subscribed to linux in Ubuntu.

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to