[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1520546360-15331-1-git-send-email-mrv@mojatatu.com>
Date: Thu, 8 Mar 2018 16:59:16 -0500
From: Roman Mashak <mrv@...atatu.com>
To: davem@...emloft.net
Cc: netdev@...r.kernel.org, kernel@...atatu.com, jhs@...atatu.com,
xiyou.wangcong@...il.com, jiri@...nulli.us,
Roman Mashak <mrv@...atatu.com>
Subject: [PATCH v3 net-next 0/4] Fix event generation for actions batch Add/Delete mode
When adding or deleting a batch of entries, the kernel sends upto
TCA_ACT_MAX_PRIO entries in an event to user space. However it does not
consider that the action sizes may vary and require different skb sizes.
For example :
% cat tc-batch.sh
#!/bin/bash
TC="sudo /mnt/iproute2.git/tc/tc"
$TC actions flush action gact
for i in `seq 1 $1`;
do
cmd="action pass index $i "
args=$args$cmd
done
$TC actions add $args
%
% ./tc-batch.sh 32
Error: Failed to fill netlink attributes while adding TC action.
We have an error talking to the kernel
%
This patchset introduces new callback in tc_action_ops, which calculates
the action size, and passes size to tcf_add_notify()/tcf_del_notify(). The
patch fixes act_gact, and the rest of actions will be updated in the
follow-up patches.
v3:
Fixed tcf_action_fill_size() to return shared attrs length when
action ->get_fill_size() isn't implemented.
v2:
Restructured patches to make them bisectable.
Roman Mashak (4):
net sched actions: update Add/Delete action API with new argument
net sched actions: add new tc_action_ops callback
net sched actions: calculate add/delete event message size
net sched actions: implement get_fill_size routine in act_gact
include/net/act_api.h | 4 +++-
net/sched/act_api.c | 63 ++++++++++++++++++++++++++++++++++++++++++++-------
net/sched/act_gact.c | 14 ++++++++++++
net/sched/cls_api.c | 3 ++-
4 files changed, 74 insertions(+), 10 deletions(-)
--
2.7.4
Powered by blists - more mailing lists