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;