|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] xen: fix 02_sedf_period_lower_neg.py test case
The follow patch adds some bounds checking to values passed when
changing the period and slice of a domain using the sedf scheduler. I
picked some values for minimum that seemed sane, but it should be double
checked to make sure that they are OK values.
--
Ryan Harper
Software Engineer; Linux Technology Center
IBM Corp., Austin, Tx
(512) 838-9253 T/L: 678-9253
ryanh@xxxxxxxxxx
diffstat output:
sched_sedf.c | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletion(-)
Signed-off-by: Ryan Harper <ryanh@xxxxxxxxxx>
---
diff -r 7fb830a80f6d xen/common/sched_sedf.c
--- a/xen/common/sched_sedf.c Tue Mar 7 22:04:00 2006
+++ b/xen/common/sched_sedf.c Tue Mar 7 16:39:10 2006
@@ -56,6 +56,12 @@
#define EXTRA_QUANTUM (MICROSECS(500))
#define WEIGHT_PERIOD (MILLISECS(100))
#define WEIGHT_SAFETY (MILLISECS(5))
+
+/* FIXME: need to validate that these are sane */
+#define PERIOD_MAX ULONG_MAX
+#define PERIOD_MIN (MICROSECS(10))
+#define SLICE_MAX ULONG_MAX
+#define SLICE_MIN (MICROSECS(5))
#define IMPLY(a, b) (!(a) || (b))
#define EQ(a, b) ((!!(a)) == (!!(b)))
@@ -1609,7 +1615,10 @@
* Sanity checking: note that disabling extra weight requires
* that we set a non-zero slice.
*/
- if ( (cmd->u.sedf.slice == 0) ||
+ if ( (cmd->u.sedf.period > PERIOD_MAX) ||
+ (cmd->u.sedf.period < PERIOD_MIN) ||
+ (cmd->u.sedf.slice > SLICE_MAX) ||
+ (cmd->u.sedf.slice < SLICE_MIN) ||
(cmd->u.sedf.slice > cmd->u.sedf.period) )
return -EINVAL;
EDOM_INFO(v)->weight = 0;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-devel] [PATCH] xen: fix 02_sedf_period_lower_neg.py test case,
Ryan Harper <=
|
|
|
|
|