From nobody Wed May 1 23:35:00 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1580295937691889.5834448465181; Wed, 29 Jan 2020 03:05:37 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-399-IGHVSdmNMLKfolydFILZwA-1; Wed, 29 Jan 2020 06:05:34 -0500 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 0CA151005512; Wed, 29 Jan 2020 11:05:28 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7307138A; Wed, 29 Jan 2020 11:05:27 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 3967E18089CD; Wed, 29 Jan 2020 11:05:25 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 00TB5NDU031385 for ; Wed, 29 Jan 2020 06:05:23 -0500 Received: by smtp.corp.redhat.com (Postfix) id 623AB10A58C9; Wed, 29 Jan 2020 11:05:23 +0000 (UTC) Received: from mimecast-mx02.redhat.com (mimecast02.extmail.prod.ext.rdu2.redhat.com [10.11.55.18]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5D4B910A58C7 for ; Wed, 29 Jan 2020 11:05:21 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id DDB3C802881 for ; Wed, 29 Jan 2020 11:05:20 +0000 (UTC) Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-39-vUpaA-lLMfOa4BZL1uu5ew-1; Wed, 29 Jan 2020 06:05:17 -0500 Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 514CDB048; Wed, 29 Jan 2020 11:05:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1580295936; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=K6ZDrkj+RZb4ANd7vZjh7dut8PJnvGXdRGSVHZkHVJY=; b=dCCVoxP5vtcg08ri4rjx0gAzQujln8zY98rASdn8UyksKcB4mLUpz/98UFkOUTIKjd8mQs Z1ZwW7MnfrMJ9R5QNJMUe+3hKoGMk6UBEjlELLfd6+fAtgQvP2vK8RgCvJloi4eJzsIjQq adpSL+24R7jbzirK2DuhDi+hrNJ9f/s= X-MC-Unique: IGHVSdmNMLKfolydFILZwA-1 X-MC-Unique: vUpaA-lLMfOa4BZL1uu5ew-1 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Message-ID: Subject: [PATCH] libxl: support getting and setting parameters for the Credit2 From: Dario Faggioli To: libvir-list Date: Wed, 29 Jan 2020 12:05:15 +0100 Organization: SUSE User-Agent: Evolution 3.34.3 MIME-Version: 1.0 Authentication-Results: relay.mimecast.com; dkim=none; spf=pass (relay.mimecast.com: domain of dfaggioli@suse.com designates 195.135.220.15 as permitted sender) smtp.mailfrom=dfaggioli@suse.com X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 X-loop: libvir-list@redhat.com X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-1BHhygaVgZ3WTgAQ6nAW" X-Zoho-Virus-Status: 1 X-ZohoMail-DKIM: pass (identity @redhat.com) --=-1BHhygaVgZ3WTgAQ6nAW Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" With Credit2 being Xen default scheduler, it's definitely the case to allow Credit2's scheduling parameters to be get and set via libvirt. This is easy, as Credit and Credit2 have (at least as of now) the very same parameters ('weight' and 'cap'). So we can just let credit2 pass the scheduler-type check and the same code will work for both. Signed-off-by: Dario Faggioli Reviewed-by: Jim Fehlig --- Cc: Jim Fehlig --- src/libxl/libxl_driver.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index e0a8ec5c24..78ca77d0f6 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -75,6 +75,7 @@ VIR_LOG_INIT("libxl.libxl_driver"); =20 /* Number of Xen scheduler parameters */ #define XEN_SCHED_CREDIT_NPARAM 2 +#define XEN_SCHED_CREDIT2_NPARAM 2 =20 #define LIBXL_CHECK_DOM0_GOTO(name, label) \ do { \ @@ -4586,6 +4587,8 @@ libxlDomainGetSchedulerType(virDomainPtr dom, int *np= arams) break; case LIBXL_SCHEDULER_CREDIT2: name =3D "credit2"; + if (nparams) + *nparams =3D XEN_SCHED_CREDIT2_NPARAM; break; case LIBXL_SCHEDULER_ARINC653: name =3D "arinc653"; @@ -4632,11 +4635,11 @@ libxlDomainGetSchedulerParametersFlags(virDomainPtr= dom, if (virDomainObjCheckActive(vm) < 0) goto cleanup; =20 + /* Only credit and credit2 are supported for now. */ sched_id =3D libxl_get_scheduler(cfg->ctx); - - if (sched_id !=3D LIBXL_SCHEDULER_CREDIT) { + if (sched_id !=3D LIBXL_SCHEDULER_CREDIT && sched_id !=3D LIBXL_SCHEDU= LER_CREDIT2) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Only 'credit' scheduler is supported")); + _("Only 'credit' and 'credit2' schedulers are suppo= rted")); goto cleanup; } =20 @@ -4657,6 +4660,9 @@ libxlDomainGetSchedulerParametersFlags(virDomainPtr d= om, goto cleanup; } =20 + /* Credit and Credit2 have the same number (two) of parameters, + * so this is ok for both, at least as long as that stays true. */ + G_STATIC_ASSERT(XEN_SCHED_CREDIT_NPARAM =3D=3D XEN_SCHED2_CREDIT_NPARA= M); if (*nparams > XEN_SCHED_CREDIT_NPARAM) *nparams =3D XEN_SCHED_CREDIT_NPARAM; ret =3D 0; @@ -4711,9 +4717,11 @@ libxlDomainSetSchedulerParametersFlags(virDomainPtr = dom, =20 sched_id =3D libxl_get_scheduler(cfg->ctx); =20 - if (sched_id !=3D LIBXL_SCHEDULER_CREDIT) { + /* Only credit and credit2 are supported for now. */ + sched_id =3D libxl_get_scheduler(cfg->ctx); + if (sched_id !=3D LIBXL_SCHEDULER_CREDIT && sched_id !=3D LIBXL_SCHEDU= LER_CREDIT2) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Only 'credit' scheduler is supported")); + _("Only 'credit' and 'credit2' schedulers are suppo= rted")); goto endjob; } =20 --=20 2.24.1 --=20 Dario Faggioli, Ph.D http://about.me/dario.faggioli Virtualization Software Engineer SUSE Labs, SUSE https://www.suse.com/ ------------------------------------------------------------------- <> (Raistlin Majere) --=-1BHhygaVgZ3WTgAQ6nAW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAl4xZusACgkQFkJ4iaW4 c+571RAA6fglsOIxC5KQvKNLVNiXNO+tcc1VuGlKfBPBIUQqkUk90ZDkAqkyGN4c INuhXj1yaO1nYwRGNvYHkh3/KvwAUatvcjKwbEEDc0Mfk+aFAwhIL0Xpf6RFe+ik gPiI1oCF4A9xfonI9DopzpEO8/cTAB1udkWNwOVrkgm1PeE6nOtys3E/vXYDIG+v 2S3kNa/pfYt9JGp0rHnKxZuSa1ZqlJxLB5H+pRqfGtECr6JkTosAf/UMz8V5ES6M yOgmFPc/SdyAkCyqW5mGPDA4Id9x8lPly1T6jOV+zDnMrozFGzRdcp9rxSWcU13X Qxh8RTjjRzRu6WVM1/bEepghNvwHX7LMcwimlXduRitRCgg2BNKS03JDbpXLA9rR 3PyGiGIRrijFWul0tW+eY8IMPlcWw2SC97uQ6t2uh6GgORZC1RFmO4inmS4QdkEi MZRcgJO4nVcVHps3UXXiHuRiZeQvYhRe0aYCaByC5u/bmoaQFVJ5Uv8g65a73ZLK ULQsK5urJsEKJ5+Orb6HQW3oGuwwnpj+buvBn0LtTnfgot0+ljUOYNOJDqkAE7t3 qWt3P4ygrVa6o9mdz3Fq3Cw0Aez8VWA5ttZ6BfijkN5lk7el6TgeyqAHl93k62p4 e4nsnEUR3vQ/m6A66VgF86dAZSOfXHrm5xax8SyrLlXD9ObC9KM= =MH44 -----END PGP SIGNATURE----- --=-1BHhygaVgZ3WTgAQ6nAW--