git: dsched - expand framework to track threads

看板DFBSD_commit作者時間16年前 (2010/04/23 04:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit e02e815e5b4a80e8f373bebaff9be146d3092b56 Author: Alex Hornung <ahornung@gmail.com> Date: Thu Apr 22 09:48:50 2010 +0000 dsched - expand framework to track threads * The dsched framework now takes care of tracking threads/procs and bufs. Most of this code was factored out of dsched_fq. * fq now uses the new, much simplified API, reducing the lines of code by about 50%. * this will also allow for runtime policy switching, even to other policies that need to track procs/threads. Previously it was only possible to have one policy that tracked threads. * Now all policies can be loaded at any time and will still be able to track all the threads. * dsched_fq is now a module that can be loaded if required. Once loaded the policy is registered and ready to use with any disk. * There is also a kernel option DSCHED_FQ now; otherwise dsched_fq_load="YES" has to be set in loader.conf to be able to use fq from boot on. * Make a dsched sysctl tree. Suggested-by: Aggelos Economopoulos Summary of changes: sys/Makefile | 1 + sys/Makefile.modules | 1 + sys/conf/files | 7 +- sys/conf/options | 3 + sys/dsched/Makefile | 5 + sys/dsched/fq/Makefile | 4 + sys/dsched/fq/dsched_fq.h | 134 +-------- sys/dsched/fq/dsched_fq_core.c | 421 +++++---------------------- sys/dsched/fq/dsched_fq_diskops.c | 187 +++--------- sys/dsched/fq/dsched_fq_procops.c | 178 ------------ sys/kern/kern_dsched.c | 572 +++++++++++++++++++++++++++++++------ sys/kern/subr_disk.c | 3 +- sys/sys/dsched.h | 153 +++++++++-- test/dsched/Makefile | 11 + test/dsched/dsched_stats.c | 48 +++ test/dsched_fq/fqstats.c | 24 +-- 16 files changed, 840 insertions(+), 912 deletions(-) create mode 100644 sys/dsched/Makefile create mode 100644 sys/dsched/fq/Makefile delete mode 100644 sys/dsched/fq/dsched_fq_procops.c create mode 100644 test/dsched/Makefile create mode 100644 test/dsched/dsched_stats.c http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e02e815e5b4a80e8f373bebaff9be146d3092b56 -- DragonFly BSD source repository
文章代碼(AID): #1BqB95EJ (DFBSD_commit)