git://git.onelab.eu
/
linux-2.6.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(from parent 1:
17838e7
)
Fix share initialization problem [PL #4227]
author
Andy Bavier
<acb@cs.princeton.edu>
Thu, 24 Feb 2005 14:34:38 +0000
(14:34 +0000)
committer
Andy Bavier
<acb@cs.princeton.edu>
Thu, 24 Feb 2005 14:34:38 +0000
(14:34 +0000)
kernel/ckrm/ckrm_cpu_monitor.c
patch
|
blob
|
history
diff --git
a/kernel/ckrm/ckrm_cpu_monitor.c
b/kernel/ckrm/ckrm_cpu_monitor.c
index
d8c199a
..
90ab258
100644
(file)
--- a/
kernel/ckrm/ckrm_cpu_monitor.c
+++ b/
kernel/ckrm/ckrm_cpu_monitor.c
@@
-838,8
+838,13
@@
static void adjust_lrq_weight(struct ckrm_cpu_class *clsptr, int cpu_online)
total_pressure += lrq->lrq_load;
}
+#define FIX_SHARES
+#ifdef FIX_SHARES
+#warning "ACB: fix share initialization problem [PL #4227]"
+#else
if (! total_pressure)
return;
+#endif
class_weight = cpu_class_weight(clsptr) * cpu_online;
@@
-852,6
+857,10
@@
static void adjust_lrq_weight(struct ckrm_cpu_class *clsptr, int cpu_online)
/*give idle class a high share to boost interactiveness */
lw = cpu_class_weight(clsptr);
else {
+#ifdef FIX_SHARES
+ if (! total_pressure)
+ return;
+#endif
lw = lrq->lrq_load * class_weight;
do_div(lw,total_pressure);
if (!lw)