lkml.org 
[lkml]   [2022]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 14/31] sched_ext: Implement BPF extensible scheduler class
Hello, Julia.

On Sun, Dec 11, 2022 at 11:33:50PM +0100, Julia Lawall wrote:
> > diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c
> > new file mode 100644
> > index 000000000000..f42464d66de4
> > --- /dev/null
> > +++ b/kernel/sched/ext.c
> > @@ -0,0 +1,2780 @@
> > +/* SPDX-License-Identifier: GPL-2.0 */
> > +/*
> > + * Copyright (c) 2022 Meta Platforms, Inc. and affiliates.
> > + * Copyright (c) 2022 Tejun Heo <tj@kernel.org>
> > + * Copyright (c) 2022 David Vernet <dvernet@meta.com>
> > + */
> > +#define SCX_OP_IDX(op) (offsetof(struct sched_ext_ops, op) / sizeof(void (*)(void)))
> > +
> > +enum scx_internal_consts {
> > + SCX_NR_ONLINE_OPS = SCX_OP_IDX(init),
> > + SCX_DSP_DFL_MAX_BATCH = 32,
>
> This definition of SCX_DSP_DFL_MAX_BATCH makes the dispatch queue have size
> 32. The example central policy thus aborts if more than 32 tasks are woken
> up at once.

Yeah, scx_exampl_central needs to either set ops.dispatch_max_batch higher
according to number of CPUs or flush and exit the loop and retry when
scx_bpf_dispatch_nr_slots() reaches zero. Will update.

Thanks.

--
tejun

\
 
 \ /
  Last update: 2022-12-12 03:19    [W:0.161 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site