| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
 Re: [PATCH-for-4.17] xen/sched: fix restore_vcpu_affinity() by removing it
 
To: Jan Beulich <jbeulich@xxxxxxxx>From: Juergen Gross <jgross@xxxxxxxx>Date: Fri, 21 Oct 2022 12:43:08 +0200Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Dario Faggioli <dfaggioli@xxxxxxxx>, Henry Wang <Henry.Wang@xxxxxxx>, Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxxDelivery-date: Fri, 21 Oct 2022 10:43:19 +0000List-id: Xen developer discussion <xen-devel.lists.xenproject.org> 
 
On 21.10.22 12:37, Jan Beulich wrote:
 
On 21.10.2022 08:58, Juergen Gross wrote:
 
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -1196,76 +1196,6 @@ static void sched_reset_affinity_broken(const struct 
sched_unit *unit)
          v->affinity_broken = false;
  }
 
My pre-push build test failed because the function above ...
 
-void restore_vcpu_affinity(struct domain *d)
-{
-    unsigned int cpu = smp_processor_id();
-    struct sched_unit *unit;
-
-    ASSERT(system_state == SYS_STATE_resume);
-
-    rcu_read_lock(&sched_res_rculock);
-
-    for_each_sched_unit ( d, unit )
-    {
-        spinlock_t *lock;
-        unsigned int old_cpu = sched_unit_master(unit);
-        struct sched_resource *res;
-
-        ASSERT(!unit_runnable(unit));
-
-        /*
-         * Re-assign the initial processor as after resume we have no
-         * guarantee the old processor has come back to life again.
-         *
-         * Therefore, here, before actually unpausing the domains, we should
-         * set v->processor of each of their vCPUs to something that will
-         * make sense for the scheduler of the cpupool in which they are in.
-         */
-        lock = unit_schedule_lock_irq(unit);
-
-        cpumask_and(cpumask_scratch_cpu(cpu), unit->cpu_hard_affinity,
-                    cpupool_domain_master_cpumask(d));
-        if ( cpumask_empty(cpumask_scratch_cpu(cpu)) )
-        {
-            if ( sched_check_affinity_broken(unit) )
-            {
-                sched_set_affinity(unit, unit->cpu_hard_affinity_saved, NULL);
-                sched_reset_affinity_broken(unit);
 
... has its only use removed here. It didn't seem appropriate for me to
go and silently remove that function as well.
 
Weird I didn't spot that.
I'll update the patch.
Juergen
 Attachment:
OpenPGP_0xB0DE9DD628BF132F.ascDescription: OpenPGP public key
 Attachment:
OpenPGP_signatureDescription: OpenPGP digital signature
 
 |