aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/utils/iproute2/patches
Commit message (Collapse)AuthorAgeFilesLines
* iproute2: fix libbpf detection with NLS enabledTony Ambardar2021-04-101-0/+20
| | | | | | | | | | | | | | | | | | Upstream iproute2 detects libbpf using a one-line $CC test-compile, which normally ignores LDFLAGS. With NLS enabled however, LDFLAGS includes an "rpath-link" linker option needed to resolve libintl.so. Its absence causes both the compile and libbpf detection to fail: ld: warning: libintl.so.8, needed by libbpf.so, not found (try using -rpath or -rpath-link) ld: libelf.so.1: undefined reference to `libintl_dgettext' collect2: error: ld returned 1 exit status Fix this by directly including $LDFLAGS in the test-compile command. Reported-by: Ian Cooper <iancooper@hotmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com> (cherry picked from commit aab3a04ce87c27996b7ce9ea306db8c6eed86941)
* iproute2: add missing limits.h includesTony Ambardar2021-04-101-0/+45
| | | | | | | | | | | | | | | | This patch has been submitted upstream to fix an error reported by a few users. One instance seen using gcc 10.2.0, binutils 2.35.1 and musl 1.1.24: bpf_glue.c: In function 'get_libbpf_version': bpf_glue.c:46:11: error: 'PATH_MAX' undeclared (first use in this function); did you mean 'AF_MAX'? 46 | char buf[PATH_MAX], *s; | ^~~~~~~~ | AF_MAX Reported-by: Rui Salvaterra <rsalvaterra@gmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com> (cherry picked from commit 10ffefe60299637bc592ec4ef0dde93e0e2e8344)
* iproute2: update to 5.11.0Tony Ambardar2021-04-1010-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latest iproute2 version brings various improvements and fixes: https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/log/?qt=range&q=v5.10.0..v5.11.0 In particular, ip and tc now use libbpf as the standard way to load BPF programs, rather than the old, limited custom loader. This allows more consistent and featureful BPF program handling e.g. support for global initialized variables. Also fix a longstanding problem with iproute2 builds where unneeded DSO dependencies are added to most utilities, bloating their installation footprint. From research and testing, explicitly using a "--as-needed" linker flag avoids the issue. Update accordingly and drop extra package dependencies from Makefile. Additional build and packaging updates include: - install missing development header to iproute2/bpf_elf.h - propagate OpenWrt verbose flag during build - update and refresh patches Compile and run tested: QEMU/malta-mips32be on kernels 5.4 & 5.10. All iproute2 packages were built and installed to the test image. Some regression testing using ip-full and tc was successfully performed to exercise several kmods, tc modules, and simple BPF programs. Signed-off-by: Tony Ambardar <itugrok@yahoo.com> (cherry picked from commit b048a305a3d3cbb5375e32757e70aa129b4c7c4f)
* iproute2: update to 5.9Hans Dedecker2020-11-142-4/+4
| | | | | | | | | Update iproute2 to latest stable 5.9; for the changes see https://lwn.net/Articles/834755/ Refresh patches Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> Acked-by: Hauke Mehrtens <hauke@huake-m.de>
* iproute2: Update to version 5.8Hauke Mehrtens2020-08-305-86/+9
| | | | | | | | | | | | | | | The ipk sizes for mips_24Kc change like this: old: ip-full_5.7.0-2_mips_24kc.ipk 165.786 ip-tiny_5.7.0-2_mips_24kc.ipk 117.730 tc_5.7.0-2_mips_24kc.ipk 144.405 new: ip-full_5.8.0-1_mips_24kc.ipk 169.775 ip-tiny_5.8.0-1_mips_24kc.ipk 119.808 tc_5.8.0-1_mips_24kc.ipk 149.053 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* iproute2: disable SELinux for nowDaniel Golle2020-08-131-0/+11
| | | | Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* iproute2: tc: fix missing em_ipset moduleTony Ambardar2020-07-141-0/+32
| | | | | | | | | | | | | Feature detection doesn't recognize ipset v7 use on kernel v5.x systems and thus disables the tc ematch function em_ipset. - backport patch: * 002-configure-support-ipset-v7.patch: 650591a7a70c configure: support ipset version 7 with kernel version 5 Fixes: 4e0c54bc5bc8 ("kernel: add support for kernel 5.4") Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: tc: fix dynamic symbol table size optimizationTony Ambardar2020-07-141-1/+1
| | | | | | | | | Recent iproute2 5.x versions modified the symbols resolved for plugins, causing "tc .. action xt .." to fail. Update the list of symbols to fix. Fixes: b61495409bb3 ("iproute2: tc: reduce size of dynamic symbol table") Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: update to 5.7.0Hans Dedecker2020-06-131-0/+46
| | | | | | Update iproute2 to latest stable 5.7.0; for the changes see https://lwn.net/Articles/822152/ Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: update to 5.6.0Hans Dedecker2020-04-113-6/+6
| | | | | | Update iproute2 to latest stable 5.6.0; for the changes see https://lwn.net/Articles/816778/ Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: update to 5.5.0, enable LTODENG Qingfang2020-02-138-12/+12
| | | | | | | Update iproute2 to 5.5.0 Enable LTO to save several KB of size Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: update to 5.4.0Hans Dedecker2019-12-062-5/+5
| | | | | | | Update iproute2 to latest stable version, see https://lwn.net/Articles/805654/ for the changes in 5.4.0 Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: update to 5.3.0DENG Qingfang2019-09-284-24/+29
| | | | | | Update iproute2 to 5.3.0 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: update to 5.2.0DENG Qingfang2019-08-243-722/+0
| | | | | | Remove upstream patches Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: add libcap support, enabled in ip-fullAlin Nastac2019-08-183-18/+11
| | | | | | | | Preserve optionality of libcap by having configuration script follow the HAVE_CAP environment variable, used similarly to the HAVE_ELF variable. Signed-off-by: Alin Nastac <alin.nastac@gmail.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase/refresh patches]
* iproute2: update to 5.1.0Deng Qingfang2019-07-045-163/+61
| | | | | | | | Update iproute2 to 5.1.0 Remove upstream patch 010-cake-fwmark.patch Backport a patch to fix struct sysinfo redefinition error Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: update ctinfo supportKevin Darbyshire-Bryant2019-06-201-10/+5
| | | | | | | | Follow upstream changes - header file changes only no functional or executable changes, hence no package bump required Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: add tc action ctinfo supportKevin Darbyshire-Bryant2019-06-071-0/+594
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the userspace control portion of the backported kernelspace act_ctinfo. ctinfo is a tc action restoring data stored in conntrack marks to various fields. At present it has two independent modes of operation, restoration of DSCP into IPv4/v6 diffserv and restoration of conntrack marks into packet skb marks. It understands a number of parameters specific to this action in additional to the usual action syntax. Each operating mode is independent of the other so all options are optional, however not specifying at least one mode is a bit pointless. Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE] [CONTROL] [index <INDEX>] DSCP mode dscp enables copying of a DSCP stored in the conntrack mark into the ipv4/v6 diffserv field. The mask is a 32bit field and specifies where in the conntrack mark the DSCP value is located. It must be 6 contiguous bits long. eg. 0xfc000000 would restore the DSCP from the upper 6 bits of the conntrack mark. The DSCP copying may be optionally controlled by a statemask. The statemask is a 32bit field, usually with a single bit set and must not overlap the dscp mask. The DSCP restore operation will only take place if the corresponding bit/s in conntrack mark ANDed with the statemask yield a non zero result. eg. dscp 0xfc000000 0x01000000 would retrieve the DSCP from the top 6 bits, whilst using bit 25 as a flag to do so. Bit 26 is unused in this example. CPMARK mode cpmark enables copying of the conntrack mark to the packet skb mark. In this mode it is completely equivalent to the existing act_connmark action. Additional functionality is provided by the optional mask parameter, whereby the stored conntrack mark is logically ANDed with the cpmark mask before being stored into skb mark. This allows shared usage of the conntrack mark between applications. eg. cpmark 0x00ffffff would restore only the lower 24 bits of the conntrack mark, thus may be useful in the event that the upper 8 bits are used by the DSCP function. Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE] [CONTROL] [index <INDEX>] where : dscp MASK is the bitmask to restore DSCP STATEMASK is the bitmask to determine conditional restoring cpmark MASK mask applied to restored packet mark ZONE is the conntrack zone CONTROL := reclassify | pipe | drop | continue | ok | goto chain <CHAIN_INDEX> Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: update to 5.0.0Deng Qingfang2019-03-206-47/+16
| | | | | | | | | Update iproute2 to 5.0.0 Remove upstream patch 001-tc-fix-undefined-XATTR_SIZE_MAX Alter patch 170-ip_tiny as support for IPX and DECnet is dropped Update patch 010-cake-fwmark to match upstream commit Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: add cake fwmark supportRyan Mounce2019-03-201-0/+155
| | | | Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* iproute2: tc: reduce size of dynamic symbol tableTony Ambardar2019-03-141-0/+44
| | | | | | | | | | | | | In the case of SHARED_LIBS=y, don't use -export-dynamic to place *all* symbols into the dynamic symbol table. Instead, use --dynamic-list to export a smaller set of symbols similar to that defined in static-syms.h in the case of SHARED_LIBS=n, avoiding an 11 KB tc package size increase. The symbol set is based on that required by the only plugin, m_xt.so. Also increment PKG_RELEASE. Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE fixup]
* iproute2: tc: enable and fix support for using .so pluginsTony Ambardar2019-03-141-0/+101
| | | | | | | | | | | | | | | | | | | | | | | This enables using the tc module m_xt.so, which uses the act_ipt kernel module to allow tc actions based on iptables targets. e.g. tc filter add dev eth0 parent 1: prio 10 protocol ip \ u32 match u32 0 0 action xt -j DSCP --set-dscp-class BE Make the SHARED_LIBS parameter configurable and based on tc package selection. Fix a problem using the tc m_xt.so plugin as also described in https://bugs.debian.org/868059: Sync include/xtables.h from iptables to make sure the right offset is used when accessing structure members defined in libxtables. One could get “Extension does not know id …” otherwise. (See also: #868059) Patch to sync the included xtables.h with system iptables 1.6.x. This continues to work with iptables 1.8.2. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: support eBFP/XDP object file loading, simplify linking libelfTony Ambardar2019-03-142-60/+11
| | | | | | | | | | | | | | Add build and runtime dependencies on libelf, allowing tc and ip-full to load BPF and XDP object files respectively. Define package 'tc' as a singleton package variant, which can be used to enable additional functionality limited only to tc. Also set ip-tiny as the default 'ip' variant. Preserve optionality of libelf by having configuration script follow the HAVE_ELF environment variable, used similarly to the HAVE_MNL variable. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* Revert "iproute2: simplify linking libelf for eBFP/XDP object file support"Hans Dedecker2019-02-192-11/+60
| | | | | | | | This reverts commit 26681fa6a6fcbec0024906eb8367e9a3160521fb as it breaks the installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma for the ip-full variant Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* Revert "iproute2: tc: enable and fix support for using .so plugins"Hans Dedecker2019-02-191-101/+0
| | | | | | | | This reverts commit fc80ef3613465e60257a5ddf0674debe45b09180 as it breaks the installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma for the ip-full variant Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* Revert "iproute2: tc: reduce size of dynamic symbol table"Hans Dedecker2019-02-191-44/+0
| | | | | | | | This reverts commit 248797834bf21916ddf663edc96d86ee5377850e as it breaks the installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma for the ip-full variant Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: tc: reduce size of dynamic symbol tableTony Ambardar2019-02-111-0/+44
| | | | | | | | | | | In the case of SHARED_LIBS=y, don't use -export-dynamic to place *all* symbols into the dynamic symbol table. Instead, use --dynamic-list to export a smaller set of symbols similar to that defined in static-syms.h in the case of SHARED_LIBS=n, avoiding an 11 KB tc package size increase. Also increment PKG_RELEASE. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: tc: enable and fix support for using .so pluginsTony Ambardar2019-02-111-0/+101
| | | | | | | | | | | | | | | | | | | | | | | This enables using the tc module m_xt.so, which uses the act_ipt kernel module to allow tc actions based on iptables targets. e.g. tc filter add dev eth0 parent 1: prio 10 protocol ip \ u32 match u32 0 0 action xt -j DSCP --set-dscp-class BE Make the SHARED_LIBS parameter configurable and based on tc package selection. Fix a problem using the tc m_xt.so plugin as also described in https://bugs.debian.org/868059: Sync include/xtables.h from iptables to make sure the right offset is used when accessing structure members defined in libxtables. One could get “Extension does not know id …” otherwise. (See also: #868059) Patch to sync the included xtables.h with system iptables 1.6.x. This continues to work with iptables 1.8.2. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: simplify linking libelf for eBFP/XDP object file supportTony Ambardar2019-02-112-60/+11
| | | | | | | | | | Simplify build and runtime dependencies on libelf, which allows tc and ip to load BPF and XDP object files respectively. Preserve optionality of libelf by having configuration script follow the HAVE_ELF environment variable, used similarly to the HAVE_MNL variable. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: simplify Makefile, patches and fix feature detectionTony Ambardar2019-02-112-11/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | Compile-based feature detection (e.g. xtables, ipset support) was broken due to silent compilation errors in the configure script, caused by a Makefile variable KERNEL_INCLUDE referring to kernel build headers. Use userspace headers by setting the same "user_headers" kernel include path as used for the iptables build. Remove redundant or unused Build/Configure definitions from package Makefile, including KERNEL_INCLUDE, LIBC_INCLUDE and DBM includes. Don't pass LDFLAGS within MAKE_FLAGS as this interferes with LDFLAGS in tc/Makefile and masks a link parameter ("-Wl,-export-dynamic"). Instead, use standard TARGET_LDFLAGS. Replace EXTRA_CCOPTS in MAKE_FLAGS with cleaner TARGET_CPPFLAGS, and also drop now unneeded patch 150-extra-ccopts.patch. Enable defining XT_LIB_DIR from Makefile, needed to set the iptables modules directory to something other than /lib/xtables, and also add libxtables dependency. Both are needed with working xtables detection. Note that libxtables is also pulled in by iptables, firewall or luci, so this change has no size impact in most cases. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: fix broken configuration patchTony Ambardar2019-02-112-7/+12
| | | | | | | | | | Since v4.13, iproute2 switched to a config.mk file with greater use of pkg-config for library/feature detection. Replace the old Config patch with one modifying the configure script but enabling the same changes: - explicitly disable TC_CONFIG_ATM - rely on feature detection for IP_CONFIG_SETNS and TC_CONFIG_XT Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* iproute2: drop libbsd dependencyHans Dedecker2019-01-291-0/+19
| | | | | | | As the usage of libbsd is no longer limited to glibc, prevent libbsd being picked up by removing the dependency on libbsd. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: update to 4.20.0Deng Qingfang2019-01-236-386/+18
| | | | | | | | | Update to the latest version of iproute2; see https://lwn.net/Articles/776174/ for a full overview of the changes in 4.20. Remove upstream patch 001-fix-print_0xhex-on-32-bit.patch and 002-tc-fix-xtables-incorrect-usage-of-LDFLAGS.patch Introduce a patch to include <linux/limits.h> for XATTR_SIZE_MAX in tc Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* iproute2: only link libelf where neededJo-Philipp Wich2018-12-191-0/+60
| | | | | | | | | | | | | | | | | | | | | The iproute2 build system links libelf support to every utility while only the tc program actually requires libelf specific functionality. Unfortunately the BPF ELF functionality is not confined into an own compilation unit but added to the existing bpf.c sources of the shared static libutil.a, causing every iproute2 applet to pick up an implicit libelf.so dependency. In order to avoid this requirement, patch the iproute2 build system to create both a libutil.a and a libutil-elf.a, with the former being built without libelf functionality and to only link the tc applet with the libelf enabled libutil. Finally, make the tc package depend on libelf to solve compilation errors. Ref: https://github.com/openwrt/packages/issues/7728 Fixes: FS#2011 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* iproute2: backport patch fixing incorrect usage of LDFLAGSHans Dedecker2018-12-141-0/+35
| | | | | | | Backport upstream patch fixing incorrect passing of -lxtables to LDFLAGS instead of LDLIBS in the tc/Makefile Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: backport upstream patch to fix print_0xhex on 32 bitHans Dedecker2018-12-121-0/+343
| | | | | | | | | The argument to print_0xhex is converted to unsigned long long so the format string give for normal printout has to be some variant of %llx. Backport the patch as otherwise, bogus values will be printed on 32 bit platforms. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: update to 4.19.0Hans Dedecker2018-11-084-1669/+7
| | | | | | | | Update to the latest version of iproute2; see https://lwn.net/Articles/769354/ for a full overview of the changes in 4.19. Remove 190-add-cake-to-tc patch as CAKE qdisc is now supported in 4.19.0 Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: q_cake: Also print nonat, nowash and no-ack-filter keywordsKevin Darbyshire-Bryant2018-09-151-2/+6
| | | | | | | | Pull in latest upstream tweaks: Similar to the previous patch for no-split-gso, the negative keywords for 'nat', 'wash' and 'ack-filter' were not printed either. Add those as well. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: q_cake: Add printing of no-split-gso optionKevin Darbyshire-Bryant2018-09-121-1/+3
| | | | | | | | When the GSO splitting was turned into dual split-gso/no-split-gso options, the printing of the latter was left out. Add that, so output is consistent with the options passed Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: update cake man pageKevin Darbyshire-Bryant2018-08-311-2/+80
| | | | | | | | | | | CAKE supports overriding of its internal classification of packets through the tc filter mechanism. Update the man page in our package, even though we don't build them. Someone may find the documentation useful. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit 30598a05385b0ac2380dd4f30037a9f9d0318cf2)
* iproute2: update to 4.18.0Hans Dedecker2018-08-251-37/+0
| | | | | | | | Update to the latest version of iproute2; see https://lwn.net/Articles/762515/ for a full overview of the changes in 4.18. Remove upstream patch 001-rdma-sync-some-IP-headers-with-glibc Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: cake: make gso/gro splitting configurableKevin Darbyshire-Bryant2018-08-021-1/+10
| | | | | | | | | | | | | | | | | | This patch makes sch_cake's gso/gro splitting configurable from userspace. To disable breaking apart superpackets in sch_cake: tc qdisc replace dev whatever root cake no-split-gso to enable: tc qdisc replace dev whatever root cake split-gso Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk> Signed-off-by: Dave Taht <dave.taht@gmail.com> [pulled from netdev list - no API/ABI change] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: tc: backport canonical cake supportKevin Darbyshire-Bryant2018-07-211-149/+153
| | | | | | | | | | | | | | | | | | | iproute2's tc was updated to support the recently upstreamed cake qdisc. Backport this canonical support from upstream into iproute2 v4.17 There is no kernel kmod/userspace tc ABI change in this release from the previous package bump, so everyone can breath a sigh of relief. This is largely a code style change, the exception to prove the rule: option 'autorate_ingress' has been changed to 'autorate-ingress' to fit in with upstream option naming expectations. No openwrt package (e.g. sqm-scripts) has knowledge of 'autorate_ingress' thus only users who made their own scripts or used it within the 'dangerous configuration' options of sqm-scripts will be affected. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: update to 4.17.0Hans Dedecker2018-07-1013-307/+45
| | | | | | | | | | | | Update to the latest version of iproute2; see https://lwn.net/Articles/756991/ for a full overview of the changes in 4.17. Remove upstream patch 002-json_print-fix-hidden-64-bit-type-promotion. Backport upstream patch 001-rdma-sync-some-IP-headers-with-glibc fixing rdma compile issue. At the same time re-organize patch numbering so the OpenWRT specific patches start at 100. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* iproute2: tc: update support for cakeKevin Darbyshire-Bryant2018-07-031-28/+83
| | | | | | | | | Bump iproute2/tc support of cake. Add support for cake's change to u64 attribute passing for certain attributes (rate & byte counts) Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: import latest cakeKevin Darbyshire-Bryant2018-05-071-445/+424
| | | | | | | | | | | | | | | | | | The sender domain has a DMARC Reject/Quarantine policy which disallows sending mailing list messages using the original "From" header. To mitigate this problem, the original message has been wrapped automatically by the mailing list software. Bearing fruits of the latest upstreaming efforts on cake. Changes: diffserv-llt dropped. The paper describing this DSCP allocation has gone stale and doesn't appear used. The userspace to kernel netlink messages for cake have been reworked in a backwards incompatible way, so tc & cake must be bumped together this once. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: backport json_print-fix-hidden-64-bit-type-promotionKevin Darbyshire-Bryant2018-05-071-0/+288
| | | | | | | | | | | | | | | | | | | | | | | The sender domain has a DMARC Reject/Quarantine policy which disallows sending mailing list messages using the original "From" header. To mitigate this problem, the original message has been wrapped automatically by the mailing list software. print_uint() will silently promote its variable type to uint64_t, but there is nothing that ensures that the format string specifier passed along with it fits (and the function name suggest to pass "%u"). Fix this by changing print_uint() to use a native 'unsigned int' type, and introduce a separate print_u64() function for printing 64-bit values. All call sites that were actually printing 64-bit values using print_uint() are converted to use print_u64() instead. Since print_int() was already using native int types, just add a print_s64() to match, but don't convert any call sites. Fixes wonkyness in some stats from some qdiscs under tc Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: update to 4.16Hans Dedecker2018-05-023-14/+4
| | | | | | | | | Update to latest version of iproute2, refresh patches. See https://lkml.org/lkml/2018/4/2/349 for a full overview of the changes in 4.16. Build and tested on AR7xxx against musl Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* Revert "iproute2: fix hidden uint to uin64_t promotion in json_print"Kevin Darbyshire-Bryant2018-03-311-65/+0
| | | | | | | | | | This reverts commit 745d0e7f4b6e8659cc967291acd33889035127f0. It looks like upstream don't want the patch so let's revert it here too. I hope a fix from upstream is forthcoming. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iproute2: cake: support new overhead reporting & stats structuresKevin Darbyshire-Bryant2018-03-231-266/+969
| | | | | | | | | | | | | | | | | | | | | | Cake in kernel space now splits stats structure handling across netlink messages to reduce stack usage issue flagged by upstream kernel checks. Update user space (tc) qdisc handling to understand this new regime. Cake also reports packet overheads & compensation in a different way so add display code for this. e.g. 'tc -s qdisc show dev eth0' reports this extra detail: min/max transport layer size: 28 / 1500 min/max overhead-adjusted size: 65 / 1550 average transport hdr offset: 14 Cake also supports output in JSON format. Patch is bulkier than before because a (slightly out of date - see above stats) man page is included for reference. Better than nothing! Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>