process creation/deletions hooks

From: Shaya Potter (spotter@yucs.org)
Date: Thu Mar 27 2003 - 16:08:10 EST


We are trying to write a module that does it's own accounting of
processes as they are created and deleted. We have an extremely ugly
hack of taking care of process creation (wrap fork() and clone() in a
syscall wrapper, as that's the only way processes can be created).

However, doing the same for exit() doesn't work, because processes don't
have to call exit() to die, but can be killed any of number of ways, and
go straight to the do_exit() code.

I would imagine one would hook a void * function that takes some sort of
defined argument, perhaps a pointer to the task_struct (as it will be
called in do_exit, it would seem locking shouldn't be an issue) and what
the function is allowed to do would be defined.

Would people be for/against an interface that allows for modules to
register functions that can be called on process creation/deletion. It
would help us avoid the hacks, such as I described, and I imagine could
have benefit others.

thanks,

shaya

-
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/



This archive was generated by hypermail 2b29 : Mon Mar 31 2003 - 22:00:29 EST