Commit 58c3c3aa authored by Linus Torvalds's avatar Linus Torvalds

Make taskstats round statistics down to nearest 1k bytes/events

Even with just the interface limited to admin, there really is little to
reason to give byte-per-byte counts for taskstats.  So round it down to
something less intrusive.
Acked-by: default avatarBalbir Singh <bsingharora@gmail.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 1a51410a
...@@ -78,6 +78,7 @@ void bacct_add_tsk(struct taskstats *stats, struct task_struct *tsk) ...@@ -78,6 +78,7 @@ void bacct_add_tsk(struct taskstats *stats, struct task_struct *tsk)
#define KB 1024 #define KB 1024
#define MB (1024*KB) #define MB (1024*KB)
#define KB_MASK (~(KB-1))
/* /*
* fill in extended accounting fields * fill in extended accounting fields
*/ */
...@@ -95,14 +96,14 @@ void xacct_add_tsk(struct taskstats *stats, struct task_struct *p) ...@@ -95,14 +96,14 @@ void xacct_add_tsk(struct taskstats *stats, struct task_struct *p)
stats->hiwater_vm = get_mm_hiwater_vm(mm) * PAGE_SIZE / KB; stats->hiwater_vm = get_mm_hiwater_vm(mm) * PAGE_SIZE / KB;
mmput(mm); mmput(mm);
} }
stats->read_char = p->ioac.rchar; stats->read_char = p->ioac.rchar & KB_MASK;
stats->write_char = p->ioac.wchar; stats->write_char = p->ioac.wchar & KB_MASK;
stats->read_syscalls = p->ioac.syscr; stats->read_syscalls = p->ioac.syscr & KB_MASK;
stats->write_syscalls = p->ioac.syscw; stats->write_syscalls = p->ioac.syscw & KB_MASK;
#ifdef CONFIG_TASK_IO_ACCOUNTING #ifdef CONFIG_TASK_IO_ACCOUNTING
stats->read_bytes = p->ioac.read_bytes; stats->read_bytes = p->ioac.read_bytes & KB_MASK;
stats->write_bytes = p->ioac.write_bytes; stats->write_bytes = p->ioac.write_bytes & KB_MASK;
stats->cancelled_write_bytes = p->ioac.cancelled_write_bytes; stats->cancelled_write_bytes = p->ioac.cancelled_write_bytes & KB_MASK;
#else #else
stats->read_bytes = 0; stats->read_bytes = 0;
stats->write_bytes = 0; stats->write_bytes = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment