X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=kernel%2Fvserver%2Fcvirt_init.h;h=b8da69c9f5a87ce138b4349ae65f008f0500f58d;hb=refs%2Fheads%2Fvserver;hp=ecc34e1da665cc5beb8d6bb3b134b6389831fbfc;hpb=ae17e7656036804d46ec431260821023d4c8cb83;p=linux-2.6.git diff --git a/kernel/vserver/cvirt_init.h b/kernel/vserver/cvirt_init.h index ecc34e1da..b8da69c9f 100644 --- a/kernel/vserver/cvirt_init.h +++ b/kernel/vserver/cvirt_init.h @@ -1,4 +1,5 @@ + extern uint64_t vx_idle_jiffies(void); static inline void vx_info_init_cvirt(struct _vx_cvirt *cvirt) @@ -10,6 +11,8 @@ static inline void vx_info_init_cvirt(struct _vx_cvirt *cvirt) nsuptime = (unsigned long long)cvirt->bias_uptime.tv_sec * NSEC_PER_SEC + cvirt->bias_uptime.tv_nsec; cvirt->bias_clock = nsec_to_clock_t(nsuptime); + cvirt->bias_tv.tv_sec = 0; + cvirt->bias_tv.tv_usec = 0; jiffies_to_timespec(idle_jiffies, &cvirt->bias_idle); atomic_set(&cvirt->nr_threads, 0); @@ -17,21 +20,30 @@ static inline void vx_info_init_cvirt(struct _vx_cvirt *cvirt) atomic_set(&cvirt->nr_uninterruptible, 0); atomic_set(&cvirt->nr_onhold, 0); - down_read(&uts_sem); - cvirt->utsname = system_utsname; - up_read(&uts_sem); - spin_lock_init(&cvirt->load_lock); cvirt->load_last = jiffies; atomic_set(&cvirt->load_updates, 0); cvirt->load[0] = 0; cvirt->load[1] = 0; cvirt->load[2] = 0; + atomic_set(&cvirt->total_forks, 0); + + spin_lock_init(&cvirt->syslog.logbuf_lock); + init_waitqueue_head(&cvirt->syslog.log_wait); + cvirt->syslog.log_start = 0; + cvirt->syslog.log_end = 0; + cvirt->syslog.con_start = 0; + cvirt->syslog.logged_chars = 0; +} + +static inline +void vx_info_init_cvirt_pc(struct _vx_cvirt_pc *cvirt_pc, int cpu) +{ + // cvirt_pc->cpustat = { 0 }; } static inline void vx_info_exit_cvirt(struct _vx_cvirt *cvirt) { -#ifdef CONFIG_VSERVER_DEBUG int value; vxwprintk((value = atomic_read(&cvirt->nr_threads)), @@ -43,23 +55,14 @@ static inline void vx_info_exit_cvirt(struct _vx_cvirt *cvirt) vxwprintk((value = atomic_read(&cvirt->nr_uninterruptible)), "!!! cvirt: %p[nr_uninterruptible] = %d on exit.", cvirt, value); -#endif + vxwprintk((value = atomic_read(&cvirt->nr_onhold)), + "!!! cvirt: %p[nr_onhold] = %d on exit.", + cvirt, value); return; } -static inline void vx_info_init_cacct(struct _vx_cacct *cacct) -{ - int i,j; - - for (i=0; i<5; i++) { - for (j=0; j<3; j++) { - atomic_set(&cacct->sock[i][j].count, 0); - atomic_set(&cacct->sock[i][j].total, 0); - } - } -} - -static inline void vx_info_exit_cacct(struct _vx_cacct *cacct) +static inline +void vx_info_exit_cvirt_pc(struct _vx_cvirt_pc *cvirt_pc, int cpu) { return; }