fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / include / linux / vserver / cvirt_def.h
index c368c2e..ecac7e1 100644 (file)
@@ -2,14 +2,12 @@
 #define _VX_CVIRT_DEF_H
 
 #include <linux/jiffies.h>
-#include <linux/utsname.h>
 #include <linux/spinlock.h>
 #include <linux/wait.h>
 #include <linux/time.h>
+#include <linux/utsname.h>
 #include <asm/atomic.h>
 
-#include "cacct.h"
-
 
 struct _vx_usage_stat {
        uint64_t user;
@@ -37,7 +35,6 @@ struct _vx_syslog {
 /* context sub struct */
 
 struct _vx_cvirt {
-       int max_threads;                /* maximum allowed threads */
        atomic_t nr_threads;            /* number of current threads */
        atomic_t nr_running;            /* number of running threads */
        atomic_t nr_uninterruptible;    /* number of uninterruptible threads */
@@ -45,15 +42,14 @@ struct _vx_cvirt {
        atomic_t nr_onhold;             /* processes on hold */
        uint32_t onhold_last;           /* jiffies when put on hold */
 
+       struct timeval bias_tv;         /* time offset to the host */
        struct timespec bias_idle;
        struct timespec bias_uptime;    /* context creation point */
        uint64_t bias_clock;            /* offset in clock_t */
 
-       struct new_utsname utsname;
-
        spinlock_t load_lock;           /* lock for the load averages */
        atomic_t load_updates;          /* nr of load updates done so far */
-       uint32_t load_last;             /* last time load was cacled */
+       uint32_t load_last;             /* last time load was calculated */
        uint32_t load[3];               /* load averages 1,5,15 */
 
        atomic_t total_forks;           /* number of forks so far */
@@ -61,17 +57,25 @@ struct _vx_cvirt {
        struct _vx_syslog syslog;
 };
 
-struct _vx_sock_acc {
-       atomic_t count;
-       atomic_t total;
+struct _vx_cvirt_pc {
+       struct _vx_usage_stat cpustat;
 };
 
-/* context sub struct */
 
-struct _vx_cacct {
-       unsigned long total_forks;
+#ifdef CONFIG_VSERVER_DEBUG
 
-       struct _vx_sock_acc sock[VXA_SOCK_SIZE][3];
-};
+static inline void __dump_vx_cvirt(struct _vx_cvirt *cvirt)
+{
+       printk("\t_vx_cvirt:\n");
+       printk("\t threads: %4d, %4d, %4d, %4d\n",
+               atomic_read(&cvirt->nr_threads),
+               atomic_read(&cvirt->nr_running),
+               atomic_read(&cvirt->nr_uninterruptible),
+               atomic_read(&cvirt->nr_onhold));
+       /* add rest here */
+       printk("\t total_forks = %d\n", atomic_read(&cvirt->total_forks));
+}
+
+#endif
 
 #endif /* _VX_CVIRT_DEF_H */