Message ID | 20220107115130.51073-1-xiangxia.m.yue@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | net: sched: allow user to select txqueue | expand |
On Fri, Jan 7, 2022 at 7:51 PM <xiangxia.m.yue@gmail.com> wrote: > > From: Tonghao Zhang <xiangxia.m.yue@gmail.com> > > Patch 1 allow user to select txqueue in clsact hook. > Patch 2 support skbhash, classid, cpuid to select txqueue. > > Tonghao Zhang (2): > net: sched: use queue_mapping to pick tx queue > net: sched: support hash/classid/cpuid selecting tx queue ping, any progress? > include/linux/netdevice.h | 3 + > include/linux/rtnetlink.h | 1 + > include/net/tc_act/tc_skbedit.h | 1 + > include/uapi/linux/tc_act/tc_skbedit.h | 8 +++ > net/core/dev.c | 31 +++++++++- > net/sched/act_skbedit.c | 84 ++++++++++++++++++++++++-- > 6 files changed, 122 insertions(+), 6 deletions(-) > > -- > v7: > * 1/2 fix build warn, move pick tx queue into egress_needed_key for > simplifing codes. > v6: > * 1/2 use static key and compiled when CONFIG_NET_EGRESS configured. > v5: > * 1/2 merge netdev_xmit_reset_txqueue(void), > netdev_xmit_skip_txqueue(void), to netdev_xmit_skip_txqueue(bool skip). > v4: > * 1/2 introduce netdev_xmit_reset_txqueue() and invoked in > __dev_queue_xmit(), so ximt.skip_txqueue will not affect > selecting tx queue in next netdev, or next packets. > more details, see commit log. > * 2/2 fix the coding style, rename: > SKBEDIT_F_QUEUE_MAPPING_HASH -> SKBEDIT_F_TXQ_SKBHASH > SKBEDIT_F_QUEUE_MAPPING_CLASSID -> SKBEDIT_F_TXQ_CLASSID > SKBEDIT_F_QUEUE_MAPPING_CPUID -> SKBEDIT_F_TXQ_CPUID > * 2/2 refactor tcf_skbedit_hash, if type of hash is not specified, use > the queue_mapping, because hash % mapping_mod == 0 in "case 0:" > * 2/2 merge the check and add extack > v3: > * 2/2 fix the warning, add cpuid hash type. > v2: > * 1/2 change skb->tc_skip_txqueue to per-cpu var, add more commit message. > * 2/2 optmize the codes. > > Cc: Jamal Hadi Salim <jhs@mojatatu.com> > Cc: Cong Wang <xiyou.wangcong@gmail.com> > Cc: Jiri Pirko <jiri@resnulli.us> > Cc: "David S. Miller" <davem@davemloft.net> > Cc: Jakub Kicinski <kuba@kernel.org> > Cc: Jonathan Lemon <jonathan.lemon@gmail.com> > Cc: Eric Dumazet <edumazet@google.com> > Cc: Alexander Lobakin <alobakin@pm.me> > Cc: Paolo Abeni <pabeni@redhat.com> > Cc: Talal Ahmad <talalahmad@google.com> > Cc: Kevin Hao <haokexin@gmail.com> > Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> > Cc: Kees Cook <keescook@chromium.org> > Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com> > Cc: Antoine Tenart <atenart@kernel.org> > Cc: Wei Wang <weiwan@google.com> > Cc: Arnd Bergmann <arnd@arndb.de> > -- > 2.27.0 >
From: Tonghao Zhang <xiangxia.m.yue@gmail.com> Patch 1 allow user to select txqueue in clsact hook. Patch 2 support skbhash, classid, cpuid to select txqueue. Tonghao Zhang (2): net: sched: use queue_mapping to pick tx queue net: sched: support hash/classid/cpuid selecting tx queue include/linux/netdevice.h | 3 + include/linux/rtnetlink.h | 1 + include/net/tc_act/tc_skbedit.h | 1 + include/uapi/linux/tc_act/tc_skbedit.h | 8 +++ net/core/dev.c | 31 +++++++++- net/sched/act_skbedit.c | 84 ++++++++++++++++++++++++-- 6 files changed, 122 insertions(+), 6 deletions(-)