|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [Patch 2/2]xen/sched_credit2.c : Runqueue per core
>>> On 09.03.15 at 09:55, <uma.sharma523@xxxxxxxxx> wrote:
> --- a/xen/common/sched_credit2.c
> +++ b/xen/common/sched_credit2.c
> @@ -165,6 +165,8 @@
>
> int opt_migrate_resist=500;
> integer_param("sched_credit2_migrate_resist", opt_migrate_resist);
> +static char __initdata opt_credit2_runqueue[10] = "socket";
> +string_param("credit2_runqueue", opt_credit2_runqueue);
This then needs to be added to docs/misc/xen-command-line.markdown,
which will then hopefully make clear what meaning it has.
> @@ -1935,15 +1938,36 @@ static void init_pcpu(const struct scheduler *ops,
> int cpu)
> return;
> }
>
> + /*Figure out which type of runqueue are to be created */
> + if (!strcmp(opt_credit2_runquque, "socket")) {
> + rq = 's';
> + } else if (!strcmp(opt_credit2_runquque, "core")) {
> + rq = 'c';
> + } else {
> + rq = 's';
> + }
> +
> /* Figure out which runqueue to put it in */
> rqi = 0;
>
> - /* Figure out which runqueue to put it in */
> - /* NB: cpu 0 doesn't get a STARTING callback, so we hard-code it to
> runqueue 0. */
> - if ( cpu == 0 )
> - rqi = 0;
> - else
> - rqi = cpu_to_socket(cpu);
> + /* cpu 0 doesn't get a STARTING callback, so use boot CPU data for it */
> + if ( cpu == 0 ) {
> + switch (rq) {
> + case 's' : rqi = boot_cpu_to_socket();
> + break;
> + case 'c' : rqi = boot_cpu_to_core();
> + break;
> + default : rqi = boot_cpu_to_socket();
> + }
> + } else {
> + switch (rq) {
> + case 's' : rqi = cpu_to_socket(cpu);
> + break;
> + case 'c' : rqi = cpu_to_core(cpu);
> + break;
> + default : rqi = cpu_to_socket(cpu);
> + }
> + }
>
> if ( rqi < 0 )
> {
> @@ -1988,7 +2012,7 @@ csched2_alloc_pdata(const struct scheduler *ops, int
> cpu)
> {
> /* Check to see if the cpu is online yet */
> /* Note: cpu 0 doesn't get a STARTING callback */
> - if ( cpu == 0 || cpu_to_socket(cpu) >= 0 )
> + if ( cpu == 0 || cpu_to_socket(cpu) >= 0 || cpu_to_core(cpu))
> init_pcpu(ops, cpu);
> else
> printk("%s: cpu %d not online yet, deferring initializatgion\n",
In all of the above, please obey to ./CODING_STYLE.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |