From patchwork Mon Sep 9 09:33:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?SsO8cmdlbiBHcm/Dnw==?= X-Patchwork-Id: 11137573 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 82C9F14DB for ; Mon, 9 Sep 2019 09:35:13 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 67F9D2086D for ; Mon, 9 Sep 2019 09:35:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 67F9D2086D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i7G3X-0006Zz-Ch; Mon, 09 Sep 2019 09:33:55 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i7G3W-0006Zb-EF for xen-devel@lists.xenproject.org; Mon, 09 Sep 2019 09:33:54 +0000 X-Inumbo-ID: e9b6a149-d2e4-11e9-ac09-12813bfff9fa Received: from mx1.suse.de (unknown [195.135.220.15]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id e9b6a149-d2e4-11e9-ac09-12813bfff9fa; Mon, 09 Sep 2019 09:33:44 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 4FFD7B661; Mon, 9 Sep 2019 09:33:43 +0000 (UTC) From: Juergen Gross To: xen-devel@lists.xenproject.org Date: Mon, 9 Sep 2019 11:33:35 +0200 Message-Id: <20190909093339.7134-1-jgross@suse.com> X-Mailer: git-send-email 2.16.4 Subject: [Xen-devel] [PATCH v3 0/4] xen/sched: use new idle scheduler for free cpus X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Tim Deegan , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Dario Faggioli , Julien Grall , Jan Beulich MIME-Version: 1.0 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" These three patches have been carved out from my core scheduling series as they are sufficiently independent to be applied even without the big series. Without this little series there are messages like the following to be seen on the console when booting with smt=0: (XEN) Adding cpu 1 to runqueue 0 (XEN) CPU 1 still not dead... (XEN) CPU 1 still not dead... (XEN) CPU 1 still not dead... (XEN) CPU 1 still not dead... By assigning cpus to Cpupool-0 only after all cpus are up and by not using the more complicated credit2 scheduler for cpus not in any cpupool this situation can simply no longer happen, as parking the not to be started threads is done before. Changes in V3: - use ZERO_BLOCK_PTR (Patch 3) - add patch 4 Changes in V2: - commit messages updated - renamed functions (Patch 2) Juergen Gross (4): xen/sched: populate cpupool0 only after all cpus are up xen/sched: remove cpu from pool0 before removing it xen/sched: add minimalistic idle scheduler for free cpus xen/sched: switch to debugtrace in cpupool handling xen/common/cpupool.c | 228 +++++++++++++++++++++++++++------------------ xen/common/sched_credit.c | 9 -- xen/common/sched_null.c | 7 -- xen/common/schedule.c | 172 +++++++++++++++++----------------- xen/include/xen/sched-if.h | 2 + 5 files changed, 229 insertions(+), 189 deletions(-)