2 * linux/kernel/vserver/cvirt.c
4 * Virtual Server: Context Virtualization
6 * Copyright (C) 2004 Herbert Pƶtzl
8 * V0.01 broken out from limit.c
12 #include <linux/config.h>
13 #include <linux/vserver/cvirt.h>
14 #include <linux/vserver/context.h>
15 #include <linux/vserver/switch.h>
16 #include <linux/vs_base.h>
17 #include <linux/vs_context.h>
18 #include <linux/vs_cvirt.h>
20 #include <asm/errno.h>
21 #include <asm/uaccess.h>
24 void vx_vsi_uptime(struct timespec *uptime, struct timespec *idle)
26 struct vx_info *vxi = current->vx_info;
29 jiffies_to_timeval(vxi->cvirt.bias_jiffies - INITIAL_JIFFIES, &bias);
31 set_normalized_timespec(uptime,
32 uptime->tv_sec - bias.tv_sec,
33 uptime->tv_nsec - bias.tv_usec*1000);
36 set_normalized_timespec(idle,
37 idle->tv_sec - vxi->cvirt.bias_idle.tv_sec,
38 idle->tv_nsec - vxi->cvirt.bias_idle.tv_nsec);
42 uint64_t vx_idle_jiffies()
44 return init_task.utime + init_task.stime;