On Thu, 23 Sep 2010 15:48:01 +0200
Michael Holzheu <holzheu@linux.vnet.ibm.com> wrote:
This is a big change! If this is done right then we're heading in the
direction of deprecating the longstanding way in which userspace
observes the state of Linux processes and we're recommending that the
whole world migrate to taskstats. I think?
If so, much chin-scratching will be needed, coordination with
util-linux people, etc.
We'd need to think about the implications of taskstats versioning. It
_is_ a versioned interface, so people can't just go and toss random new
stuff in there at will - it's not like adding a new procfs file, or
adding a new line to an existing one. I don't know if that's likely to
be a significant problem.
I worry that there's a dependency on CONFIG_NET? If so then that's a
big problem because in N years time, 99% of the world will be using
taskstats, but a few embedded losers will be stuck using (and having to
support) the old tools.
How many CPUs does that system have?
What's the `top' update period? One second?
So we're saying that a `top -d 1' consumes 2.4% of this
mystery-number-of-CPUs machine? That's quite a lot.
So this is a binary interface which uses an ioctl. People don't like
ioctls. Could we have triggered it with a write() instead?
Does this have the potential to save us from the CONFIG_NET=n problem?
These didn't update the taskstats version number. Should they have?
ooh, excellent. A standardised userspace access library.
Talk to me about namespaces, please. A lot of the new code involves
PIDs, but PIDs are not system-wide unique. A PID is relative to a PID
namespace. Does everything Just Work? When userspace sends a PID to
the kernel, that PID is assumed to be within the sending process's PID
namespace? If so, then please spell it all out in the changelogs. If
not then that is a problem!
If I can only observe processes in my PID namespace then is that a
problem? Should I be allowed to observe another PID namespace's
processes? I assume so, because I might be root. If so, how is that
to be done?
--