linsched: add the ability to read proc setting from proc.conf
PATCH 2/2 linsched: add the ability to read proc setting from proc.conf
From: Michael Wang <[email protected]>
This patch add the ability to read proc setting from:tools/linsched/tests/proc.conf
The style in the proc.conf is like:
proname value
Signed-off-by Michael Wang <[email protected]>
--- tools/linsched/linux_linsched.c | 30 ++++++++++++++++++++++++++++++ tools/linsched/tests/proc.conf | 5 +++++ 2 files changed, 35 insertions(+), 0 deletions(-) create mode 100644 tools/linsched/tests/proc.conf
tools/linsched/linux_linsched.c +30 -0
@@ -76,6 +76,35 @@ void linsched_init_root_cgroup(struct cgroup *root)void init_stop_tasks (void ); +#define PROC_CONFIGURE_PATH "./proc.conf" +#define CONFIGURE_BUFFER_SIZE 77 +#define CONFIGURE_MAX_LINE 77 +void linsched_read_proc_configure (void ) +{ +int line =0 ; +char buffer[CONFIGURE_BUFFER_SIZE ]; +char procname[CONFIGURE_BUFFER_SIZE ]; +unsigned long value; + +FILE *file =fopen (PROC_CONFIGURE_PATH ,"r" ); +if (!file) { +return ; + } + +while (fgets (buffer,CONFIGURE_BUFFER_SIZE , file) + && line <CONFIGURE_MAX_LINE ) { + line++; +if (buffer[0 ] =='#' ) +continue ; +if (!sscanf (buffer,"%s %lu" , procname, &value)) + goto out; +set_linsched_proc (procname, value); + } + +out: +fclose (file); +} +void linsched_init (struct linsched_topology *topo) { curr_task_id =1 ;
@@ -98,6 +127,7 @@ void linsched_init(struct linsched_topology *topo)init_lb_info ();init_stop_tasks (); +linsched_read_proc_configure (); }void linsched_default_callback (void )
tools/linsched/tests/proc.conf new file +5 -0
@@ -0,0 +1,5 @@ +#style: procname value +sched_child_runs_first 1; +sched_latency_ns 6000000; +sched_min_granularity_ns 750000; +sched_wakeup_granularity_ns 1000000;
Signature · 1 line
1.7.1