![]() | |||||||||||
Messages in this thread |
On Wed, 2006-06-21 at 15:41 +1000, Peter Williams wrote: > Matt Helsley wrote: > > Task watchers is a notifier chain that sends notifications to registered > > callers whenever a task forks, execs, changes its [re][ug]id, or exits. > > The goal is to keep the these paths comparatively simple while > > enabling the addition of per-task intialization, monitoring, and tear-down > > functions by existing and proposed kernel features. > > > > The first patch adds a global atomic notifier chain, registration > > functions, and a function to invoke the callers on the chain. > > > > Later patches: > > > > Register a task watcher for process events, shuffle bits of process events > > functions around to reduce the code, and turn it into a module. > > > > Switch task watchers from an atomic to a blocking notifier chain > > > > Register task watchers for: > > Audit > > Per Task Delay Accounting (note: not the taskstats calls) > > Profile > > > > Add a per-task raw notifier chain > > This feature is less useful than it could be in that it only allows a > per-task raw notifier to be added to the current task. For the per > process CPU capping client that I'm writing, I'd like to be able to > attach one of these to a task that's being forked (from the forking > task). Not being able to do this will force me to go to the expense of > maintaining my own hash tables for locating my per task data. You're right. The patches are missing the bit that allows the per-task watcher to be copied on fork. I've got an patch which I'll post and CC you on shortly. What it does is allow register_per_task_watcher() to register for the child task. > On a related note, I can't see where the new task's notify field gets > initialized during fork. It's initialized in kernel/sys.c:notify_per_task_watchers(), which calls RAW_INIT_NOTIFIER_HEAD(&task->notify) in response to WATCH_TASK_INIT. Cheers, -Matt Helsley - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||
| Last update: 2006-06-21 10:07 [from the cache] ©2003-2008 | |||||||||||