On Mon, Feb 14, 2005 at 09:01:38AM -0800, Jim Keniston wrote:
[..]
maxactive is specified by the user. It is the number of instances of the
probed function that can be active concurrently. For example, if the
function is non-recusrive and is called with a spinlock or mutex held,
maxactive = 1 should be enough. If the function never sleeps and is
not recursive, NR_CPUS should be enough. (Right?) maxactive is used to
If I am not wrong, here we should keep kernel premption also in mind. So,
in addition to above conditions, maxactive will be NR_CPUS when premption
is disabled.
1.5 Assumptions and Limitations
1. This requires a probepoint (but not necessarily a user-defined
handler) at the entry to every function whose returns are traced.
I think we need to take care for the case when user explicitly
wants to probe function entry point. I am not sure if kprobe
handles two probe handler for the same address.