I believe the mention pre-req patch is actually wrong (or not quite the patch we would be looking for). Instead
commit 6e8634eb13f30c58d1e28d975d99509680e1abc3 Author: Roman Mashak <m...@mojatatu.com> Date: Thu Mar 29 18:12:35 2018 -0400 tc: add oneline mode Add initial support for oneline mode in tc; actions, filters and qdiscs will be gradually updated in the follow-up patches. Signed-off-by: Roman Mashak <m...@mojatatu.com> Signed-off-by: David Ahern <dsah...@gmail.com> Adds the local declaration and assignment (the assignment is still in there after moving the declaration with the other patch). The magic there is that _SL_ is "\\" if set into oneline mode and otherwise "\n". However since oneline is not yet supported in the 18.04 version, I would propose to just adjust the fix with a declaration of _SL_ = "\n" in tc/tc.c. -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to iproute2 in Ubuntu. Matching subscriptions: iproute2 https://bugs.launchpad.net/bugs/1873961 Title: tc filter show tcp_flags wrong mask value Status in The Ubuntu-power-systems project: Triaged Status in iproute2 package in Ubuntu: Fix Released Status in iproute2 source package in Bionic: Triaged Bug description: ---Problem Description--- Problem Descriptions "tc" utility does not show correct TC rule's tcp_flags mask correctly in current "iproute2" package shipped on Genesis. # dpkg -l |grep iproute2 ii iproute2 4.15.0-2ubuntu1 ppc64el networking and traffic control tools ---Steps to Reproduce--- Steps to reproduce the problem: 1) Add a tc rule to the testing VF (i.e. p0v2_r): # tc filter add dev p0v2 protocol ip parent ffff: pref 5 chain 1 handle 0x1 flower src_mac 00:00:00:00:4e:2f/00:00:00:ff:ff:ff ip_proto tcp tcp_flags 2 skip_sw action mirred egress redirect dev p0v0_r 2) Validate the added TC rule: # tc filter show dev p0v2_r root filter protocol ip pref 5 flower chain 1 filter protocol ip pref 5 flower chain 1 handle 0x1 src_mac 00:00:00:00:4e:2f/00:00:00:ff:ff:ff eth_type ipv4 ip_proto tcp tcp_flags 22 /* <--- Wrong */ skip_sw in_hw action order 1: mirred (Egress Redirect to device p0v0_r) stolen 3) If we add the tcp_flags using explicit mask 0x7: # tc filter add dev p0v2 protocol ip parent ffff: pref 5 chain 1 handle 0x1 flower src_mac 00:00:00:00:4e:2f/00:00:00:ff:ff:ff ip_proto tcp tcp_flags 0x2/7 skip_sw action mirred egress redirect dev p0v0_r After that, using "tc filter show dev p0v2_r root" to verify, we still see the same output (tcp_flags 22) as shown in 2) above, which is wrong. Userspace tool common name: tc The userspace tool has the following bit modes: 64-bit Userspace package: iproute2 == Fixes: There are 2 patches to fix the issue: patch 1: commit b85076cd74e77538918d35992b1a9cd17ff86af8 Author: Stephen Hemminger <step...@networkplumber.org> Date: Tue Sep 11 08:29:33 2018 -0700 lib: introduce print_nl Common pattern in iproute commands is to print a line seperator in non-json mode. Make that a simple function. /* This patch declares global variable "const char *_SL_ = "\n";" in lib/utils.c to be used by 2nd patch */ patch 2: commit e8bd395508cead5a81c2bebd9d3705a9e41ea8bc Author: Keara Leibovitz <kl...@mojatatu.com> Date: Thu Jul 26 09:45:30 2018 -0400 tc: fix bugs for tcp_flags and ip_attr hex output Fix hex output for both the ip_attr and tcp_flags print functions. With the above 2 patches pull in, the new "tc" utility will show the correct tcp_flags mask: # tc filter show dev p0v2 root filter protocol ip pref 5 flower chain 1 filter protocol ip pref 5 flower chain 1 handle 0x1 src_mac 00:00:00:00:4e:2f/00:00:00:ff:ff:ff eth_type ipv4 ip_proto tcp tcp_flags 0x2/7 /* <--- Correct */ skip_sw in_hw action order 1: mirred (Egress Redirect to device p0v0_r) stolen ==== This bug affects tc in Ubuntu 18.04.1 stock image. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1873961/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp