merged into master, thanks! Mathieu
----- On Jun 7, 2018, at 3:49 PM, Michael Jeanson mjean...@efficios.com wrote: > Signed-off-by: Michael Jeanson <mjean...@efficios.com> > --- > instrumentation/events/lttng-module/9p.h | 57 ++++++++++++++++++++++++ > probes/Kbuild | 7 +++ > probes/lttng-probe-9p.c | 38 ++++++++++++++++ > 3 files changed, 102 insertions(+) > create mode 100644 instrumentation/events/lttng-module/9p.h > create mode 100644 probes/lttng-probe-9p.c > > diff --git a/instrumentation/events/lttng-module/9p.h > b/instrumentation/events/lttng-module/9p.h > new file mode 100644 > index 0000000..ab58bac > --- /dev/null > +++ b/instrumentation/events/lttng-module/9p.h > @@ -0,0 +1,57 @@ > +/* SPDX-License-Identifier: (GPL-2.0 OR LGPL-2.1) */ > +#undef TRACE_SYSTEM > +#define TRACE_SYSTEM 9p > + > +#if !defined(LTTNG_TRACE_9P_H) || defined(TRACE_HEADER_MULTI_READ) > +#define LTTNG_TRACE_9P_H > + > +#include <probes/lttng-tracepoint-event.h> > +#include <linux/version.h> > + > +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0)) > +LTTNG_TRACEPOINT_EVENT(9p_client_req, > + > + TP_PROTO(struct p9_client *clnt, int8_t type, int tag), > + > + TP_ARGS(clnt, type, tag), > + > + TP_FIELDS( > + ctf_integer_hex(void *, clnt, clnt) > + ctf_integer(u8, type, type) > + ctf_integer(u32, tag, tag) > + ) > +) > + > +LTTNG_TRACEPOINT_EVENT(9p_client_res, > + > + TP_PROTO(struct p9_client *clnt, int8_t type, int tag, int err), > + > + TP_ARGS(clnt, type, tag, err), > + > + TP_FIELDS( > + ctf_integer_hex(void *, clnt, clnt) > + ctf_integer(u8, type, type) > + ctf_integer(u32, tag, tag) > + ctf_integer(u32, err, err) > + ) > +) > + > +LTTNG_TRACEPOINT_EVENT(9p_protocol_dump, > + > + TP_PROTO(struct p9_client *clnt, struct p9_fcall *pdu), > + > + TP_ARGS(clnt, pdu), > + > + TP_FIELDS( > + ctf_integer_hex(void *, clnt, clnt) > + ctf_integer(u8, type, pdu->id) > + ctf_integer(u16, tag, pdu->tag) > + ctf_array(unsigned char, line, pdu->sdata, P9_PROTO_DUMP_SZ) > + ) > +) > +#endif > + > +#endif /* LTTNG_TRACE_9P_H */ > + > +/* This part must be outside protection */ > +#include <probes/define_trace.h> > diff --git a/probes/Kbuild b/probes/Kbuild > index ff9c5f5..7a0b650 100644 > --- a/probes/Kbuild > +++ b/probes/Kbuild > @@ -12,6 +12,13 @@ obj-$(CONFIG_LTTNG) += lttng-probe-module.o > obj-$(CONFIG_LTTNG) += lttng-probe-power.o > obj-$(CONFIG_LTTNG) += lttng-probe-statedump.o > > +ifneq ($(CONFIG_NET_9P),) > + obj-$(CONFIG_LTTNG) += $(shell \ > + if [ $(VERSION) -ge 4 \ > + -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 10 \) ] ; then \ > + echo "lttng-probe-9p.o" ; fi;) > +endif # CONFIG_NET_9P > + > i2c_dep = $(srctree)/include/trace/events/i2c.h > ifneq ($(wildcard $(i2c_dep)),) > obj-$(CONFIG_LTTNG) += lttng-probe-i2c.o > diff --git a/probes/lttng-probe-9p.c b/probes/lttng-probe-9p.c > new file mode 100644 > index 0000000..25dba4f > --- /dev/null > +++ b/probes/lttng-probe-9p.c > @@ -0,0 +1,38 @@ > +/* > + * probes/lttng-probe-9p.c > + * > + * LTTng 9p probes. > + * > + * Copyright (C) 2010-2012 Mathieu Desnoyers <mathieu.desnoy...@efficios.com> > + * Copyright (C) 2018 Michael Jeanson <mjean...@efficios.com> > + * > + * SPDX-License-Identifier: (GPL-2.0 OR LGPL-2.1) > + */ > + > +#include <linux/module.h> > +#include <net/9p/9p.h> > +#include <net/9p/client.h> > +#include <lttng-tracer.h> > + > +/* > + * Create the tracepoint static inlines from the kernel to validate that our > + * trace event macros match the kernel we run on. > + */ > +#include <trace/events/9p.h> > + > +/* > + * Create LTTng tracepoint probes. > + */ > +#define LTTNG_PACKAGE_BUILD > +#define CREATE_TRACE_POINTS > +#define TRACE_INCLUDE_PATH instrumentation/events/lttng-module > + > +#include <instrumentation/events/lttng-module/9p.h> > + > +MODULE_LICENSE("GPL and additional rights"); > +MODULE_AUTHOR("Michael Jeanson <mjean...@efficios.com>"); > +MODULE_DESCRIPTION("LTTng 9p probes"); > +MODULE_VERSION(__stringify(LTTNG_MODULES_MAJOR_VERSION) "." > + __stringify(LTTNG_MODULES_MINOR_VERSION) "." > + __stringify(LTTNG_MODULES_PATCHLEVEL_VERSION) > + LTTNG_MODULES_EXTRAVERSION); > -- > 2.17.1 -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev