Re: [PATCH 2/2] trace/kprobe: Remove limit on kretprobe maxactive

From: Steven Rostedt
Date: Thu Jun 17 2021 - 13:07:24 EST


On Thu, 17 Jun 2021 22:04:34 +0530
"Naveen N. Rao" <naveen.n.rao@xxxxxxxxxxxxxxxxxx> wrote:

> > 2. Move the kretprobe instance pool from kretprobe to struct task.
> > This pool will allocates one page per task, and shared among all
> > kretprobes. This pool will be allocated when the 1st kretprobe
> > is registered. maxactive will be kept for someone who wants to
> > use per-instance data. But since dynamic event doesn't use it,
> > it will be removed from tracefs and perf.
>
> Won't this result in _more_ memory usage compared to what we have now?

Maybe or maybe not. At least with this approach (or the function graph
one), you will allocate enough for the environment involved. If there's
thousands of tasks, then yes, it will allocate more memory. But if you are
running thousands of tasks, you should have a lot of memory in the machine.

If you are only running a few tasks, it will be less than the current
approach.

-- Steve