On Fri, 2019-09-27 at 09:00 +0200, Juergen Gross wrote: > When switching sched units synchronize all vcpus of the new unit to > be > scheduled at the same time. > > A variable sched_granularity is added which holds the number of vcpus > per schedule unit. > > As tasklets require to schedule the idle unit it is required to set > the > tasklet_work_scheduled parameter of do_schedule() to true if any cpu > covered by the current schedule() call has any pending tasklet work. > > For joining other vcpus of the schedule unit we need to add a new > softirq SCHED_SLAVE_SOFTIRQ in order to have a way to initiate a > context switch without calling the generic schedule() function > selecting the vcpu to switch to, as we already know which vcpu we > want to run. This has the other advantage not to loose any other > concurrent SCHEDULE_SOFTIRQ events. > > Signed-off-by: Juergen Gross <jgr...@suse.com> > Reviewed-by: Dario Faggioli <dfaggi...@suse.com>
Regards -- Dario Faggioli, Ph.D http://about.me/dario.faggioli Virtualization Software Engineer SUSE Labs, SUSE https://www.suse.com/ ------------------------------------------------------------------- <<This happens because _I_ choose it to happen!>> (Raistlin Majere)
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel