Re: [PATCH v3] tracing/kprobes: expose maxactive for kretprobe in kprobe_events

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 4 Apr 2017 20:24:59 +0900
Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote:

> On Mon,  3 Apr 2017 12:36:22 +0200
> Alban Crequy <alban.crequy@xxxxxxxxx> wrote:
> 
> > From: Alban Crequy <alban@xxxxxxxxxx>
> > 
> > When a kretprobe is installed on a kernel function, there is a maximum
> > limit of how many calls in parallel it can catch (aka "maxactive"). A
> > kernel module could call register_kretprobe() and initialize maxactive
> > (see example in samples/kprobes/kretprobe_example.c).
> > 
> > But that is not exposed to userspace and it is currently not possible to
> > choose maxactive when writing to /sys/kernel/debug/tracing/kprobe_events
> > 
> > The default maxactive can be as low as 1 on single-core with a
> > non-preemptive kernel. This is too low and we need to increase it not
> > only for recursive functions, but for functions that sleep or resched.
> > 
> > This patch updates the format of the command that can be written to
> > kprobe_events so that maxactive can be optionally specified.
> > 
> > I need this for a bpf program attached to the kretprobe of
> > inet_csk_accept, which can sleep for a long time.
> > 
> > This patch includes a basic selftest:
> >   
> > > # ./ftracetest -v  test.d/kprobe/
> > > === Ftrace unit tests ===
> > > [1] Kprobe dynamic event - adding and removing	[PASS]
> > > [2] Kprobe dynamic event - busy event check	[PASS]
> > > [3] Kprobe dynamic event with arguments	[PASS]
> > > [4] Kprobes event arguments with types	[PASS]
> > > [5] Kprobe dynamic event with function tracer	[PASS]
> > > [6] Kretprobe dynamic event with arguments	[PASS]
> > > [7] Kretprobe dynamic event with maxactive	[PASS]
> > >
> > > # of passed:  7
> > > # of failed:  0
> > > # of unresolved:  0
> > > # of untested:  0
> > > # of unsupported:  0
> > > # of xfailed:  0
> > > # of undefined(test bug):  0  
> > 
> > BugLink: https://github.com/iovisor/bcc/issues/1072
> > Signed-off-by: Alban Crequy <alban@xxxxxxxxxx>  
> 
> Looks good to me.
> 
> Acked-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> 

Applied, thanks!

-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux