summaryrefslogtreecommitdiff
blob: b32f36fbd2bfb55b76c485c3c40f3613f5f91dbf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
diff -Nurp linux-2.6.19.2-vs2.2.0-rc7/kernel/vserver/sched.c linux-2.6.19.2-vs2.2.0-rc7.getsched/kernel/vserver/sched.c
--- linux-2.6.19.2-vs2.2.0-rc7/kernel/vserver/sched.c	2007-01-11 18:10:54.000000000 +0100
+++ linux-2.6.19.2-vs2.2.0-rc7.getsched/kernel/vserver/sched.c	2007-01-17 09:12:40.000000000 +0100
@@ -391,6 +391,9 @@ int vc_get_sched(struct vx_info *vxi, vo
 		COPY_TOK(COPY_VALUE);
 		COPY_PRI(COPY_VALUE);
 		COPY_FRI(COPY_VALUE);
+
+		if (data->flags & VXSF_IDLE_TIME)
+			vc_data.mask |= VXSM_IDLE_TIME;
 	} else {
 		struct _vx_sched *data = &vxi->sched;
 
@@ -399,6 +402,11 @@ int vc_get_sched(struct vx_info *vxi, vo
 		COPY_FRI(COPY_VALUE);
 	}
 
+	if (vc_data.mask & VXSM_MSEC) {
+		vc_data.interval[0] = ticks_to_msec(vc_data.interval[0]);
+		vc_data.interval[1] = ticks_to_msec(vc_data.interval[1]);
+	}
+
 	if (copy_to_user (data, &vc_data, sizeof(vc_data)))
 		return -EFAULT;
 	return 0;