[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1485085487-2652-1-git-send-email-jiri@resnulli.us>
Date: Sun, 22 Jan 2017 12:44:43 +0100
From: Jiri Pirko <jiri@...nulli.us>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, yotamg@...lanox.com, idosch@...lanox.com,
eladr@...lanox.com, nogahf@...lanox.com, ogerlitz@...lanox.com,
jhs@...atatu.com, geert+renesas@...der.be,
stephen@...workplumber.org, xiyou.wangcong@...il.com,
linux@...ck-us.net, roopa@...ulusnetworks.com,
john.fastabend@...il.com, simon.horman@...ronome.com,
mrv@...atatu.com
Subject: [patch net-next 0/4] Add support for offloading packet-sampling
From: Jiri Pirko <jiri@...lanox.com>
Yotam says:
The first patch introduces the psample module, a netlink channel dedicated
to packet sampling implemented using generic netlink. This module provides
a generic way for kernel modules to sample packets, while not being tied
to any specific subsystem like NFLOG.
The second patch adds the sample tc action, which uses psample to randomly
sample packets that match a classifier. The user can configure the psample
group number, the sampling rate and the packet's truncation (to save
kernel-user traffic).
The last two patches add the support for offloading the matchall-sample
tc command in the mlxsw driver, for ingress qdiscs.
An example for psample usage can be found in the libpsample project at:
https://github.com/Mellanox/libpsample
Yotam Gigi (4):
net: Introduce psample, a new genetlink channel for packet sampling
net/sched: Introduce sample tc action
mlxsw: reg: add the Monitoring Packet Sampling Configuration Register
mlxsw: spectrum: Add packet sample offloading support
MAINTAINERS | 7 +
drivers/net/ethernet/mellanox/mlxsw/reg.h | 41 ++++
drivers/net/ethernet/mellanox/mlxsw/spectrum.c | 111 +++++++++
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 10 +
drivers/net/ethernet/mellanox/mlxsw/trap.h | 1 +
include/net/psample.h | 36 +++
include/net/tc_act/tc_sample.h | 50 ++++
include/uapi/linux/Kbuild | 1 +
include/uapi/linux/psample.h | 35 +++
include/uapi/linux/tc_act/Kbuild | 1 +
include/uapi/linux/tc_act/tc_sample.h | 26 +++
net/Kconfig | 1 +
net/Makefile | 1 +
net/psample/Kconfig | 15 ++
net/psample/Makefile | 5 +
net/psample/psample.c | 301 +++++++++++++++++++++++++
net/sched/Kconfig | 12 +
net/sched/Makefile | 1 +
net/sched/act_sample.c | 274 ++++++++++++++++++++++
19 files changed, 929 insertions(+)
create mode 100644 include/net/psample.h
create mode 100644 include/net/tc_act/tc_sample.h
create mode 100644 include/uapi/linux/psample.h
create mode 100644 include/uapi/linux/tc_act/tc_sample.h
create mode 100644 net/psample/Kconfig
create mode 100644 net/psample/Makefile
create mode 100644 net/psample/psample.c
create mode 100644 net/sched/act_sample.c
--
2.7.4
Powered by blists - more mailing lists