On Fri, 2019-08-09 at 16:58 +0200, Juergen Gross wrote: > Today the vcpu runstate of a new scheduled vcpu is always set to > "running" even if at that time vcpu_runnable() is already returning > false due to a race (e.g. with pausing the vcpu). > > With core scheduling this can no longer work as not all vcpus of a > schedule unit have to be "running" when being scheduled. So the > vcpu's > new runstate has to be selected at the same time as the runnability > of > the related schedule unit is probed. > So, you're saying that this patch is meant at fixing a race. A race that, if I understood correctly, it's not there/it's not problematic right now, but will be when we have more than 1 vcpu in a unit and we enable core scheduling. Is this the case? If yes: - this very patch, at this point in the series, is basically introducing no functional (or at least behavioral) change, is this right too? - can you provide some more detail about the race. When/how it occurs and how the changes done in credit and rt fix it? Thanks and Regards -- Dario Faggioli, Ph.D http://about.me/dario.faggioli Virtualization Software Engineer SUSE Labs, SUSE https://www.suse.com/ ------------------------------------------------------------------- <> (Raistlin Majere)