[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <44D24EAE.2060702@watson.ibm.com>
Date: Thu, 03 Aug 2006 15:29:50 -0400
From: Shailabh Nagar <nagar@...son.ibm.com>
To: Jay Lan <jlan@....com>
CC: Andrew Morton <akpm@...l.org>, Jay Lan <jlan@...r.sgi.com>,
linux-kernel@...r.kernel.org, balbir@...ibm.com, jes@....com,
csturtiv@....com, tee@....com, guillaume.thouvenin@...l.net
Subject: Re: [patch 1/3] basic accounting over taskstats
Jay Lan wrote:
> Shailabh Nagar wrote:
>
>> Andrew Morton wrote:
>>
>>>
>>> Or we remove this field altogether, perhaps. The same info is available
>>> from /proc/pid/stat anyway. Is it really needed?
>>>
>>
>> Gathering this data in userspace from /proc might be
>> difficult esp. for short-lived tasks.
>
>
> This is a serious concern. I think increasing TS_COMM_LEN
> to 32 would be a good solution.
>
>>
>> Also, /proc may not be mounted ? I'd heard somewhere that
>> some sysadmins don't install /proc for security reasons.
>> Don't know how far thats true.
>>
>> Several other fields, totalling 58 bytes, added by the CSA
>> patches are also duplicated in /proc/pid/stat. But all of them
>> could change in value during the lifetime of a task so I'm
>> guessing its not useful to get them from /proc
>> even if some kind of userspace polling of the value was
>> possible.
>
>
> The same concern above applies to here, doesn't it?
Yes. For some of the fields, pid/ppid/nice/sched you may not
really care about whether you get the value present sometime
during the lifetime vs. value at the time task exited, but for
others like utime/stime/minflt/majflt, getting the last value
is likely to matter. Either way, since there's no guarantee
that you can poll a short-lived task fast enough to get any value,
exporting the value from the kernel at exit seems to be the only safe
way.
--Shailabh
>
> Regards,
> - jay
>
>
>>
>> But if there is a way, it would sure save a lot of payload
>> sent over taskstats !
>>
>> "duplicate" fields from CSA:
>> + __u8 ac_nice; /* task_nice */
>> + char ac_comm[TS_COMM_LEN]; /* Command name */
>> + __u8 ac_sched; /* Scheduling discipline */
>> + __u32 ac_pid; /* Process ID */
>> + __u32 ac_ppid; /* Parent process ID */
>> + __u64 ac_utime; /* User CPU time [usec] */
>> + __u64 ac_stime; /* SYstem CPU time [usec] */
>> + __u64 ac_minflt; /* Minor Page Fault */
>> + __u64 ac_majflt; /* Major Page Fault */
>
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists