From: George Dunlap <george.dunlap@eu.citrix.com>
To: Meng Xu <mengxu@cis.upenn.edu>, xen-devel@lists.xen.org
Cc: ian.campbell@citrix.com, xisisu@gmail.com,
stefano.stabellini@eu.citrix.com, lu@cse.wustl.edu,
dario.faggioli@citrix.com, ian.jackson@eu.citrix.com,
ptxlinh@gmail.com, xumengpanda@gmail.com, JBeulich@suse.com,
chaowang@wustl.edu, lichong659@gmail.com, dgolomb@seas.upenn.edu
Subject: Re: [PATCH v2 2/4] libxc: add rt scheduler
Date: Mon, 8 Sep 2014 15:38:52 +0100 [thread overview]
Message-ID: <540DBF7C.2020606@eu.citrix.com> (raw)
In-Reply-To: <1410118861-2671-3-git-send-email-mengxu@cis.upenn.edu>
On 09/07/2014 08:40 PM, Meng Xu wrote:
> Add xc_sched_rt_* functions to interact with Xen to set/get domain's
> parameters for rt scheduler.
> Note: VCPU's information (period, budget) is in microsecond (us).
s/rt/rtds/g; and it looks good to me.
-George
>
> Signed-off-by: Meng Xu <mengxu@cis.upenn.edu>
> Signed-off-by: Sisu Xi <xisisu@gmail.com>
> ---
> tools/libxc/Makefile | 1 +
> tools/libxc/xc_rt.c | 65 +++++++++++++++++++++++++++++++++++++++++++++++++
> tools/libxc/xenctrl.h | 7 ++++++
> 3 files changed, 73 insertions(+)
> create mode 100644 tools/libxc/xc_rt.c
>
> diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile
> index 3b04027..8db0d97 100644
> --- a/tools/libxc/Makefile
> +++ b/tools/libxc/Makefile
> @@ -20,6 +20,7 @@ CTRL_SRCS-y += xc_sedf.c
> CTRL_SRCS-y += xc_csched.c
> CTRL_SRCS-y += xc_csched2.c
> CTRL_SRCS-y += xc_arinc653.c
> +CTRL_SRCS-y += xc_rt.c
> CTRL_SRCS-y += xc_tbuf.c
> CTRL_SRCS-y += xc_pm.c
> CTRL_SRCS-y += xc_cpu_hotplug.c
> diff --git a/tools/libxc/xc_rt.c b/tools/libxc/xc_rt.c
> new file mode 100644
> index 0000000..e62f745
> --- /dev/null
> +++ b/tools/libxc/xc_rt.c
> @@ -0,0 +1,65 @@
> +/****************************************************************************
> + *
> + * File: xc_rt.c
> + * Author: Sisu Xi
> + * Meng Xu
> + *
> + * Description: XC Interface to the rt scheduler
> + * Note: VCPU's parameter (period, budget) is in microsecond (us).
> + * All VCPUs of the same domain have same period and budget.
> + *
> + * This library is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU Lesser General Public
> + * License as published by the Free Software Foundation;
> + * version 2.1 of the License.
> + *
> + * This library is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> + * Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General Public
> + * License along with this library; if not, write to the Free Software
> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> + */
> +
> +#include "xc_private.h"
> +
> +int xc_sched_rt_domain_set(xc_interface *xch,
> + uint32_t domid,
> + struct xen_domctl_sched_rt *sdom)
> +{
> + int rc;
> + DECLARE_DOMCTL;
> +
> + domctl.cmd = XEN_DOMCTL_scheduler_op;
> + domctl.domain = (domid_t) domid;
> + domctl.u.scheduler_op.sched_id = XEN_SCHEDULER_RT_DS;
> + domctl.u.scheduler_op.cmd = XEN_DOMCTL_SCHEDOP_putinfo;
> + domctl.u.scheduler_op.u.rt.period = sdom->period;
> + domctl.u.scheduler_op.u.rt.budget = sdom->budget;
> +
> + rc = do_domctl(xch, &domctl);
> +
> + return rc;
> +}
> +
> +int xc_sched_rt_domain_get(xc_interface *xch,
> + uint32_t domid,
> + struct xen_domctl_sched_rt *sdom)
> +{
> + int rc;
> + DECLARE_DOMCTL;
> +
> + domctl.cmd = XEN_DOMCTL_scheduler_op;
> + domctl.domain = (domid_t) domid;
> + domctl.u.scheduler_op.sched_id = XEN_SCHEDULER_RT_DS;
> + domctl.u.scheduler_op.cmd = XEN_DOMCTL_SCHEDOP_getinfo;
> +
> + rc = do_domctl(xch, &domctl);
> +
> + if ( rc == 0 )
> + *sdom = domctl.u.scheduler_op.u.rt;
> +
> + return rc;
> +}
> diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h
> index 1c8aa42..a61b2a7 100644
> --- a/tools/libxc/xenctrl.h
> +++ b/tools/libxc/xenctrl.h
> @@ -875,6 +875,13 @@ int xc_sched_credit2_domain_get(xc_interface *xch,
> uint32_t domid,
> struct xen_domctl_sched_credit2 *sdom);
>
> +int xc_sched_rt_domain_set(xc_interface *xch,
> + uint32_t domid,
> + struct xen_domctl_sched_rt *sdom);
> +int xc_sched_rt_domain_get(xc_interface *xch,
> + uint32_t domid,
> + struct xen_domctl_sched_rt *sdom);
> +
> int
> xc_sched_arinc653_schedule_set(
> xc_interface *xch,
next prev parent reply other threads:[~2014-09-08 14:38 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-07 19:40 Introduce rt real-time scheduler for Xen Meng Xu
2014-09-07 19:40 ` [PATCH v2 1/4] xen: add real time scheduler rt Meng Xu
2014-09-08 14:32 ` George Dunlap
2014-09-08 18:44 ` George Dunlap
2014-09-09 9:42 ` Dario Faggioli
2014-09-09 11:31 ` George Dunlap
2014-09-09 12:52 ` Meng Xu
2014-09-09 12:25 ` Meng Xu
2014-09-09 12:46 ` Meng Xu
2014-09-09 16:57 ` Dario Faggioli
2014-09-09 18:21 ` Meng Xu
2014-09-11 8:44 ` Dario Faggioli
2014-09-11 13:49 ` Meng Xu
2014-09-07 19:40 ` [PATCH v2 2/4] libxc: add rt scheduler Meng Xu
2014-09-08 14:38 ` George Dunlap [this message]
2014-09-08 14:50 ` Ian Campbell
2014-09-08 14:53 ` Dario Faggioli
2014-09-07 19:41 ` [PATCH v2 3/4] libxl: " Meng Xu
2014-09-08 15:19 ` George Dunlap
2014-09-09 12:59 ` Meng Xu
2014-09-07 19:41 ` [PATCH v2 4/4] xl: introduce " Meng Xu
2014-09-08 16:06 ` George Dunlap
2014-09-08 16:16 ` Dario Faggioli
2014-09-09 13:14 ` Meng Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=540DBF7C.2020606@eu.citrix.com \
--to=george.dunlap@eu.citrix.com \
--cc=JBeulich@suse.com \
--cc=chaowang@wustl.edu \
--cc=dario.faggioli@citrix.com \
--cc=dgolomb@seas.upenn.edu \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=lichong659@gmail.com \
--cc=lu@cse.wustl.edu \
--cc=mengxu@cis.upenn.edu \
--cc=ptxlinh@gmail.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xen.org \
--cc=xisisu@gmail.com \
--cc=xumengpanda@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.