* : base.c too.
*/
+#include <linux/config.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <linux/time.h>
#include <linux/times.h>
#include <linux/cpuset.h>
#include <linux/rcupdate.h>
-#include <linux/delayacct.h>
#include <linux/vs_context.h>
#include <linux/vs_network.h>
+#include <linux/vs_cvirt.h>
#include <asm/uaccess.h>
#include <asm/pgtable.h>
unsigned long min_flt = 0, maj_flt = 0;
cputime_t cutime, cstime, utime, stime;
unsigned long rsslim = 0;
+ DEFINE_KTIME(it_real_value);
struct task_struct *t;
char tcomm[sizeof(task->comm)];
sigemptyset(&sigign);
sigemptyset(&sigcatch);
cutime = cstime = utime = stime = cputime_zero;
-
- mutex_lock(&tty_mutex);
read_lock(&tasklist_lock);
if (task->sighand) {
spin_lock_irq(&task->sighand->siglock);
utime = cputime_add(utime, task->signal->utime);
stime = cputime_add(stime, task->signal->stime);
}
+ it_real_value = task->signal->real_timer.expires;
}
pid = vx_info_map_pid(task->vx_info, pid_alive(task) ? task->pid : 0);
ppid = (!(pid > 1)) ? 0 : vx_info_map_tgid(task->vx_info,
pgid = vx_info_map_pid(task->vx_info, pgid);
read_unlock(&tasklist_lock);
- mutex_unlock(&tty_mutex);
- if (!whole || num_threads<2) {
- wchan = 0;
- if (current->uid == task->uid || current->euid == task->uid ||
- capable(CAP_SYS_NICE))
- wchan = get_wchan(task);
- }
+ if (!whole || num_threads<2)
+ wchan = get_wchan(task);
if (!whole) {
min_flt = task->min_flt;
maj_flt = task->maj_flt;
}
res = sprintf(buffer,"%d (%s) %c %d %d %d %d %d %lu %lu \
-%lu %lu %lu %lu %lu %ld %ld %ld %ld %d 0 %llu %lu %ld %lu %lu %lu %lu %lu \
-%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu %llu\n",
+%lu %lu %lu %lu %lu %ld %ld %ld %ld %d %ld %llu %lu %ld %lu %lu %lu %lu %lu \
+%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu\n",
pid,
tcomm,
state,
priority,
nice,
num_threads,
+ (long) ktime_to_clock_t(it_real_value),
start_time,
vsize,
mm ? get_mm_rss(mm) : 0,
task->exit_signal,
task_cpu(task),
task->rt_priority,
- task->policy,
- (unsigned long long)delayacct_blkio_ticks(task));
+ task->policy);
if(mm)
mmput(mm);
return res;