[LEDE-DEV] [PATCH] iproute2: update to v4.14.1
Hans Dedecker
dedeckeh at gmail.com
Mon Nov 27 00:47:57 PST 2017
On Mon, Nov 27, 2017 at 9:29 AM, Russell Senior
<russell at personaltelco.net> wrote:
>
> Signed-off-by: Russell Senior <russell at personaltelco.net>
> ---
> package/network/utils/iproute2/Makefile | 18 ++++++------
> .../utils/iproute2/patches/007-no_arpd.patch | 6 ++--
> .../utils/iproute2/patches/008-no_netem.patch | 2 +-
> .../iproute2/patches/120-libnetlink-pic.patch | 7 ++---
> ...pi-libc-compat.h-do-not-rely-on-__GLIBC__.patch | 4 +--
> ...er.h-prevent-redefinition-of-struct-ethhd.patch | 8 +++---
> .../utils/iproute2/patches/300-ip_tiny.patch | 22 +++++++--------
> .../iproute2/patches/900-drop_FAILED_POLICY.patch | 33 +++++++---------------
> .../iproute2/patches/950-add-cake-to-tc.patch | 8 +++---
> 9 files changed, 47 insertions(+), 61 deletions(-)
>
> diff --git a/package/network/utils/iproute2/Makefile b/package/network/utils/iproute2/Makefile
> index c2771f0b59..bec435d894 100644
> --- a/package/network/utils/iproute2/Makefile
> +++ b/package/network/utils/iproute2/Makefile
> @@ -8,12 +8,12 @@
> include $(TOPDIR)/rules.mk
>
> PKG_NAME:=iproute2
> -PKG_VERSION:=4.13.0
> +PKG_VERSION:=4.14.1
> PKG_RELEASE:=1
>
> PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
> PKG_SOURCE_URL:=@KERNEL/linux/utils/net/iproute2
> -PKG_HASH:=9cfb81edf8c8509e03daa77cf62aead01c4a827132f6c506578f94cc19415c50
> +PKG_HASH:=d43ac068afcc350a448f4581b6e292331ef7e4e7aa746e34981582d5fdb10067
> PKG_BUILD_PARALLEL:=1
> PKG_BUILD_DEPENDS:=iptables
> PKG_LICENSE:=GPL-2.0
> @@ -37,7 +37,7 @@ $(call Package/iproute2/Default)
> VARIANT:=tiny
> PROVIDES:=ip
> ALTERNATIVES:=200:/sbin/ip:/sbin/ip-tiny
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
Dependency on libmnl makes the usage of packages such as
ip-tiny/ip-full/tc/genl/ip-bridge version more bloated.
In the previous upstep to 4.13.0 I noticed libmnl support is rather
optional than required for these packages; I would like to keep it
that way
Hans
> endef
>
> define Package/ip-full
> @@ -46,37 +46,37 @@ $(call Package/iproute2/Default)
> VARIANT:=full
> PROVIDES:=ip
> ALTERNATIVES:=300:/sbin/ip:/sbin/ip-full
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
> endef
>
> define Package/tc
> $(call Package/iproute2/Default)
> TITLE:=Traffic control utility
> - DEPENDS:=+kmod-sched-core +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+kmod-sched-core +libmnl
> endef
>
> define Package/genl
> $(call Package/iproute2/Default)
> TITLE:=General netlink utility frontend
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
> endef
>
> define Package/ip-bridge
> $(call Package/iproute2/Default)
> TITLE:=Bridge configuration utility from iproute2
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
> endef
>
> define Package/ss
> $(call Package/iproute2/Default)
> TITLE:=Socket statistics utility
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
> endef
>
> define Package/nstat
> $(call Package/iproute2/Default)
> TITLE:=Network statistics utility
> - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> + DEPENDS:=+libnl-tiny +libmnl
> endef
>
> define Package/devlink
> diff --git a/package/network/utils/iproute2/patches/007-no_arpd.patch b/package/network/utils/iproute2/patches/007-no_arpd.patch
> index 94fb197a45..ac216ba825 100644
> --- a/package/network/utils/iproute2/patches/007-no_arpd.patch
> +++ b/package/network/utils/iproute2/patches/007-no_arpd.patch
> @@ -2,7 +2,7 @@
> +++ b/misc/Makefile
> @@ -5,9 +5,9 @@ TARGETS=ss nstat ifstat rtacct lnstat
>
> - include ../Config
> + include ../config.mk
>
> -ifeq ($(HAVE_BERKELEY_DB),y)
> - TARGETS += arpd
> @@ -11,5 +11,5 @@
> +# TARGETS += arpd
> +#endif
>
> - ifeq ($(HAVE_SELINUX),y)
> - LDLIBS += $(shell $(PKG_CONFIG) --libs libselinux)
> + all: $(TARGETS)
> +
> diff --git a/package/network/utils/iproute2/patches/008-no_netem.patch b/package/network/utils/iproute2/patches/008-no_netem.patch
> index 64896387f9..2e088f1993 100644
> --- a/package/network/utils/iproute2/patches/008-no_netem.patch
> +++ b/package/network/utils/iproute2/patches/008-no_netem.patch
> @@ -1,7 +1,7 @@
> --- a/Makefile
> +++ b/Makefile
> @@ -49,7 +49,7 @@ WFLAGS += -Wmissing-declarations -Wold-s
> - CFLAGS := $(WFLAGS) $(CCOPTS) -I../include $(DEFINES) $(CFLAGS)
> + CFLAGS := $(WFLAGS) $(CCOPTS) -I../include -I../include/uapi $(DEFINES) $(CFLAGS)
> YACCFLAGS = -d -t -v
>
> -SUBDIRS=lib ip tc bridge misc netem genl tipc devlink rdma man
> diff --git a/package/network/utils/iproute2/patches/120-libnetlink-pic.patch b/package/network/utils/iproute2/patches/120-libnetlink-pic.patch
> index ebe122e005..83ce66d976 100644
> --- a/package/network/utils/iproute2/patches/120-libnetlink-pic.patch
> +++ b/package/network/utils/iproute2/patches/120-libnetlink-pic.patch
> @@ -1,11 +1,10 @@
> --- a/lib/Makefile
> +++ b/lib/Makefile
> -@@ -12,7 +12,7 @@ ifeq ($(HAVE_MNL),y)
> - CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
> - endif
> +@@ -1,6 +1,6 @@
> + include ../config.mk
>
> -CFLAGS += -fPIC
> +CFLAGS += $(FPIC)
>
> UTILOBJ = utils.o rt_names.o ll_types.o ll_proto.o ll_addr.o \
> - inet_proto.o namespace.o json_writer.o \
> + inet_proto.o namespace.o json_writer.o json_print.o \
> diff --git a/package/network/utils/iproute2/patches/271-uapi-libc-compat.h-do-not-rely-on-__GLIBC__.patch b/package/network/utils/iproute2/patches/271-uapi-libc-compat.h-do-not-rely-on-__GLIBC__.patch
> index b0ed599196..d2860b0087 100644
> --- a/package/network/utils/iproute2/patches/271-uapi-libc-compat.h-do-not-rely-on-__GLIBC__.patch
> +++ b/package/network/utils/iproute2/patches/271-uapi-libc-compat.h-do-not-rely-on-__GLIBC__.patch
> @@ -15,8 +15,8 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
> include/uapi/linux/libc-compat.h | 18 +++++++++---------
> 1 file changed, 9 insertions(+), 9 deletions(-)
>
> ---- a/include/linux/libc-compat.h
> -+++ b/include/linux/libc-compat.h
> +--- a/include/uapi/linux/libc-compat.h
> ++++ b/include/uapi/linux/libc-compat.h
> @@ -48,13 +48,13 @@
> #ifndef _LIBC_COMPAT_H
> #define _LIBC_COMPAT_H
> diff --git a/package/network/utils/iproute2/patches/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch b/package/network/utils/iproute2/patches/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch
> index c022d17126..4e74f37322 100644
> --- a/package/network/utils/iproute2/patches/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch
> +++ b/package/network/utils/iproute2/patches/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch
> @@ -14,8 +14,8 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
> include/uapi/linux/libc-compat.h | 11 +++++++++++
> 2 files changed, 14 insertions(+)
>
> ---- a/include/linux/if_ether.h
> -+++ b/include/linux/if_ether.h
> +--- a/include/uapi/linux/if_ether.h
> ++++ b/include/uapi/linux/if_ether.h
> @@ -22,6 +22,7 @@
> #define _LINUX_IF_ETHER_H
>
> @@ -38,8 +38,8 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
>
>
> #endif /* _LINUX_IF_ETHER_H */
> ---- a/include/linux/libc-compat.h
> -+++ b/include/linux/libc-compat.h
> +--- a/include/uapi/linux/libc-compat.h
> ++++ b/include/uapi/linux/libc-compat.h
> @@ -89,6 +89,14 @@
>
> #endif /* _NET_IF_H */
> diff --git a/package/network/utils/iproute2/patches/300-ip_tiny.patch b/package/network/utils/iproute2/patches/300-ip_tiny.patch
> index d48ea8581c..813d579434 100644
> --- a/package/network/utils/iproute2/patches/300-ip_tiny.patch
> +++ b/package/network/utils/iproute2/patches/300-ip_tiny.patch
> @@ -1,8 +1,8 @@
> --- a/ip/Makefile
> +++ b/ip/Makefile
> -@@ -28,6 +28,13 @@ ifeq ($(HAVE_MNL),y)
> - LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
> - endif
> +@@ -15,6 +15,13 @@ RTMONOBJ=rtmon.o
> +
> + include ../config.mk
>
> +STATIC_SYM_FILTER:=
> +ifeq ($(IP_CONFIG_TINY),y)
> @@ -14,7 +14,7 @@
> ALLOBJ=$(IPOBJ) $(RTMONOBJ)
> SCRIPTS=ifcfg rtpr routel routef
> TARGETS=ip rtmon
> -@@ -57,7 +64,7 @@ else
> +@@ -44,7 +51,7 @@ else
>
> ip: static-syms.o
> static-syms.o: static-syms.h
> @@ -72,7 +72,7 @@
> { "help", do_help },
> --- a/lib/utils.c
> +++ b/lib/utils.c
> -@@ -787,6 +787,7 @@ const char *rt_addr_n2a_r(int af, int le
> +@@ -817,6 +817,7 @@ const char *rt_addr_n2a_r(int af, int le
> return inet_ntop(af, addr, buf, buflen);
> case AF_MPLS:
> return mpls_ntop(af, addr, buf, buflen);
> @@ -80,7 +80,7 @@
> case AF_IPX:
> return ipx_ntop(af, addr, buf, buflen);
> case AF_DECnet:
> -@@ -796,6 +797,7 @@ const char *rt_addr_n2a_r(int af, int le
> +@@ -826,6 +827,7 @@ const char *rt_addr_n2a_r(int af, int le
> memcpy(dna.a_addr, addr, 2);
> return dnet_ntop(af, &dna, buf, buflen);
> }
> @@ -90,14 +90,14 @@
> default:
> --- a/lib/Makefile
> +++ b/lib/Makefile
> -@@ -12,6 +12,10 @@ ifeq ($(HAVE_MNL),y)
> - CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
> - endif
> +@@ -2,6 +2,10 @@ include ../config.mk
> +
> + CFLAGS += $(FPIC)
>
> +ifeq ($(IP_CONFIG_TINY),y)
> + CFLAGS += -DIPROUTE2_TINY
> +endif
> +
> - CFLAGS += $(FPIC)
> -
> UTILOBJ = utils.o rt_names.o ll_types.o ll_proto.o ll_addr.o \
> + inet_proto.o namespace.o json_writer.o json_print.o \
> + names.o color.o bpf.o exec.o fs.o
> diff --git a/package/network/utils/iproute2/patches/900-drop_FAILED_POLICY.patch b/package/network/utils/iproute2/patches/900-drop_FAILED_POLICY.patch
> index a0fd154a57..1980f87107 100644
> --- a/package/network/utils/iproute2/patches/900-drop_FAILED_POLICY.patch
> +++ b/package/network/utils/iproute2/patches/900-drop_FAILED_POLICY.patch
> @@ -9,29 +9,6 @@ Subject: [PATCH] add support for dropping with FAILED_POLICY
> ip/rtm_map.c | 4 ++++
> 3 files changed, 9 insertions(+)
>
> ---- a/include/linux/fib_rules.h
> -+++ b/include/linux/fib_rules.h
> -@@ -72,6 +72,10 @@ enum {
> - FR_ACT_BLACKHOLE, /* Drop without notification */
> - FR_ACT_UNREACHABLE, /* Drop with ENETUNREACH */
> - FR_ACT_PROHIBIT, /* Drop with EACCES */
> -+ FR_ACT_RES8,
> -+ FR_ACT_RES9,
> -+ FR_ACT_RES10,
> -+ FR_ACT_FAILED_POLICY, /* Drop with EPERM */
> - __FR_ACT_MAX,
> - };
> -
> ---- a/include/linux/rtnetlink.h
> -+++ b/include/linux/rtnetlink.h
> -@@ -220,6 +220,7 @@ enum {
> - RTN_THROW, /* Not in this table */
> - RTN_NAT, /* Translate this address */
> - RTN_XRESOLVE, /* Use external resolver */
> -+ RTN_FAILED_POLICY, /* Source address failed policy */
> - __RTN_MAX
> - };
> -
> --- a/ip/rtm_map.c
> +++ b/ip/rtm_map.c
> @@ -49,6 +49,8 @@ char *rtnl_rtntype_n2a(int id, char *buf
> @@ -52,3 +29,13 @@ Subject: [PATCH] add support for dropping with FAILED_POLICY
> else {
> res = strtoul(arg, &end, 0);
> if (!end || end == arg || *end || res > 255)
> +--- a/include/uapi/linux/rtnetlink.h
> ++++ b/include/uapi/linux/rtnetlink.h
> +@@ -221,6 +221,7 @@ enum {
> + RTN_THROW, /* Not in this table */
> + RTN_NAT, /* Translate this address */
> + RTN_XRESOLVE, /* Use external resolver */
> ++ RTN_FAILED_POLICY, /* Source address failed policy */
> + __RTN_MAX
> + };
> +
> diff --git a/package/network/utils/iproute2/patches/950-add-cake-to-tc.patch b/package/network/utils/iproute2/patches/950-add-cake-to-tc.patch
> index 7ce076e4a8..3cf2dbd062 100644
> --- a/package/network/utils/iproute2/patches/950-add-cake-to-tc.patch
> +++ b/package/network/utils/iproute2/patches/950-add-cake-to-tc.patch
> @@ -1,6 +1,6 @@
> ---- a/include/linux/pkt_sched.h
> -+++ b/include/linux/pkt_sched.h
> -@@ -871,4 +871,63 @@ struct tc_pie_xstats {
> +--- a/include/uapi/linux/pkt_sched.h
> ++++ b/include/uapi/linux/pkt_sched.h
> +@@ -872,4 +872,63 @@ struct tc_pie_xstats {
> __u32 maxq; /* maximum queue size */
> __u32 ecn_mark; /* packets marked with ecn*/
> };
> @@ -66,7 +66,7 @@
> #endif
> --- a/tc/Makefile
> +++ b/tc/Makefile
> -@@ -69,6 +69,7 @@ TCMODULES += q_codel.o
> +@@ -65,6 +65,7 @@ TCMODULES += q_codel.o
> TCMODULES += q_fq_codel.o
> TCMODULES += q_fq.o
> TCMODULES += q_pie.o
> --
> 2.15.0
>
>
>
> --
> Russell Senior, President
> russell at personaltelco.net
>
> _______________________________________________
> Lede-dev mailing list
> Lede-dev at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/lede-dev
More information about the Lede-dev
mailing list