mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
xen/sched: create public function for cpupools creation
Create new public function to create cpupools, can take as parameter the scheduler id or a negative value that means the default Xen scheduler will be used. Signed-off-by: Luca Fancellu <luca.fancellu@arm.com> Reviewed-by: Juergen Gross <jgross@suse.com>
This commit is contained in:
1 parent
5b9647f771
commit
a32769dd24
2 files changed
+31
No files matched your search
@@ -1219,6 +1219,21 @@ static void cpupool_hypfs_init(void)
|
||||
|
||||
#endif /* CONFIG_HYPFS */
|
||||
|
||||
struct cpupool *__init cpupool_create_pool(unsigned int pool_id, int sched_id)
|
||||
{
|
||||
struct cpupool *pool;
|
||||
|
||||
if ( sched_id < 0 )
|
||||
sched_id = scheduler_get_default()->sched_id;
|
||||
|
||||
pool = cpupool_create(pool_id, sched_id);
|
||||
|
||||
BUG_ON(IS_ERR(pool));
|
||||
cpupool_put(pool);
|
||||
|
||||
return pool;
|
||||
}
|
||||
|
||||
static int __init cf_check cpupool_init(void)
|
||||
{
|
||||
unsigned int cpu;
|
||||
|
||||
@@ -1158,6 +1158,22 @@ int cpupool_move_domain(struct domain *d, struct cpupool *c);
|
||||
int cpupool_do_sysctl(struct xen_sysctl_cpupool_op *op);
|
||||
unsigned int cpupool_get_id(const struct domain *d);
|
||||
const cpumask_t *cpupool_valid_cpus(const struct cpupool *pool);
|
||||
|
||||
/*
|
||||
* cpupool_create_pool - Creates a cpupool
|
||||
* @pool_id: id of the pool to be created
|
||||
* @sched_id: id of the scheduler to be used for the pool
|
||||
*
|
||||
* Creates a cpupool with pool_id id.
|
||||
* The sched_id parameter identifies the scheduler to be used, if it is
|
||||
* negative, the default scheduler of Xen will be used.
|
||||
*
|
||||
* returns:
|
||||
* pointer to the struct cpupool just created, or Xen will panic in case of
|
||||
* error
|
||||
*/
|
||||
struct cpupool *cpupool_create_pool(unsigned int pool_id, int sched_id);
|
||||
|
||||
extern void cf_check dump_runq(unsigned char key);
|
||||
|
||||
void arch_do_physinfo(struct xen_sysctl_physinfo *pi);
|
||||
|
||||