From a702c978d30903176c9ab9d45a991993bc4297e5 Mon Sep 17 00:00:00 2001 From: Josh Boyer Date: Sun, 20 Mar 2016 09:47:51 -0400 Subject: [PATCH] Linux v4.5-8194-g1200b6809dfd - net merge - Comment out stmmac patches as they break the build --- config-armv7-generic | 1 + config-generic | 19 +++- gitrev | 2 +- ...sive-useless-work-during-inetdev-des.patch | 97 ------------------- kernel.spec | 16 ++- ...ter-x_tables-check-for-size-overflow.patch | 31 ------ sources | 3 +- 7 files changed, 28 insertions(+), 141 deletions(-) delete mode 100644 ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch delete mode 100644 netfilter-x_tables-check-for-size-overflow.patch diff --git a/config-armv7-generic b/config-armv7-generic index a715c550b..aed2da718 100644 --- a/config-armv7-generic +++ b/config-armv7-generic @@ -408,6 +408,7 @@ CONFIG_RTC_DRV_ISL12057=m CONFIG_RTC_DRV_MV=m CONFIG_RTC_DRV_ARMADA38X=m CONFIG_MVNETA=m +CONFIG_MVNETA_BM_ENABLE=m CONFIG_GPIO_MVEBU=y CONFIG_MVEBU_CLK_CORE=y CONFIG_MVEBU_CLK_COREDIV=y diff --git a/config-generic b/config-generic index 66e155b64..4cd526b83 100644 --- a/config-generic +++ b/config-generic @@ -823,6 +823,7 @@ CONFIG_NET_FOU=m CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_GENEVE_CORE=m CONFIG_GENEVE=m +CONFIG_MACSEC=m CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m @@ -1285,6 +1286,9 @@ CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_VLAN=m CONFIG_NET_ACT_BPF=m CONFIG_NET_ACT_CONNMARK=m +CONFIG_NET_ACT_IFE=m +CONFIG_NET_IFE_SKBMARK=m +CONFIG_NET_IFE_SKBPRIO=m CONFIG_DCB=y CONFIG_DNS_RESOLVER=m @@ -1293,6 +1297,7 @@ CONFIG_BATMAN_ADV_BLA=y CONFIG_BATMAN_ADV_DAT=y CONFIG_BATMAN_ADV_NC=y CONFIG_BATMAN_ADV_MCAST=y +CONFIG_BATMAN_ADV_BATMAN_V=y # CONFIG_BATMAN_ADV_DEBUG is not set CONFIG_OPENVSWITCH=m @@ -1389,7 +1394,10 @@ CONFIG_L2TP_ETH=m # CONFIG_CAIF is not set +CONFIG_AF_KCM=m + CONFIG_LWTUNNEL=y +CONFIG_NET_DEVLINK=m CONFIG_RFKILL=m CONFIG_RFKILL_GPIO=m @@ -1653,6 +1661,7 @@ CONFIG_MICROCHIP_PHY=m CONFIG_FIXED_PHY=y CONFIG_MDIO_BITBANG=m CONFIG_MDIO_BCM_UNIMAC=m +# CONFIG_MDIO_THUNDER is not set CONFIG_NATIONAL_PHY=m CONFIG_ICPLUS_PHY=m CONFIG_BCM63XX_PHY=m @@ -1686,6 +1695,7 @@ CONFIG_BNX2=m CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y CONFIG_BNX2X_VXLAN=y +CONFIG_BNX2X_GENEVE=y CONFIG_CNIC=m CONFIG_FEALNX=m CONFIG_ETHOC=m @@ -1709,6 +1719,7 @@ CONFIG_MLX4_EN_VXLAN=y CONFIG_MLX4_INFINIBAND=m CONFIG_MLX5_CORE=m CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_CORE_EN_DCB=y CONFIG_MLX5_INFINIBAND=m CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_HWMON=y @@ -1803,6 +1814,7 @@ CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m +# CONFIG_ATH10K_AHB is not set # CONFIG_ATH10K_DEBUG is not set # CONFIG_ATH10K_TRACING is not set # CONFIG_ATH_TRACEPOINTS is not set @@ -1887,6 +1899,7 @@ CONFIG_IWLDVM=m CONFIG_IWLMVM=m # CONFIG_IWLWIFI_BCAST_FILTERING is not set # CONFIG_IWLWIFI_UAPSD is not set +CONFIG_IWLWIFI_PCIE_RTPM=y CONFIG_IWLWIFI_DEBUG=y CONFIG_IWLWIFI_DEBUGFS=y @@ -2082,6 +2095,7 @@ CONFIG_CAN_8DEV_USB=m CONFIG_CAN_SOFTING=m # CONFIG_CAN_SOFTING_CS is not set CONFIG_CAN_SUN4I=m +CONFIG_CAN_IFI_CANFD=m CONFIG_NETROM=m CONFIG_ROSE=m @@ -2175,6 +2189,7 @@ CONFIG_BT_BREDR=y CONFIG_BT_HS=y CONFIG_BT_LE=y CONFIG_BT_6LOWPAN=m +CONFIG_BT_LEDS=y # CONFIG_BT_SELFTEST is not set # CONFIG_BT_DEBUGFS is not set CONFIG_BT_SCO=y @@ -2202,6 +2217,7 @@ CONFIG_BT_HCIUART_3WIRE=y CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_BCM=y CONFIG_BT_HCIUART_QCA=y +CONFIG_BT_HCIUART_AG6XX=y CONFIG_BT_HCIDTL1=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBLUECARD=m @@ -5571,7 +5587,7 @@ CONFIG_NET_DSA=m CONFIG_NET_DSA_HWMON=y CONFIG_NET_DSA_MV88E6060=m CONFIG_NET_DSA_MV88E6131=m -CONFIG_NET_DSA_MV88E6123_61_65=m +CONFIG_NET_DSA_MV88E6123=m CONFIG_NET_DSA_MV88E6171=m CONFIG_NET_DSA_MV88E6352=m CONFIG_NET_DSA_BCM_SF2=m @@ -5852,6 +5868,7 @@ CONFIG_PSTORE_RAM=m # CONFIG_TEST_RHASHTABLE is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set # CONFIG_AVERAGE is not set # CONFIG_VMXNET3 is not set diff --git a/gitrev b/gitrev index 57bab5832..c7fe9f1a2 100644 --- a/gitrev +++ b/gitrev @@ -1 +1 @@ -6b5f04b6cf8ebab9a65d9c0026c650bb2538fd0f +1200b6809dfd9d73bc4c7db76d288c35fa4b2ebe diff --git a/ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch b/ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch deleted file mode 100644 index 48e4762e3..000000000 --- a/ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch +++ /dev/null @@ -1,97 +0,0 @@ -From fbd40ea0180a2d328c5adc61414dc8bab9335ce2 Mon Sep 17 00:00:00 2001 -From: "David S. Miller" -Date: Sun, 13 Mar 2016 23:28:00 -0400 -Subject: ipv4: Don't do expensive useless work during inetdev destroy. - -When an inetdev is destroyed, every address assigned to the interface -is removed. And in this scenerio we do two pointless things which can -be very expensive if the number of assigned interfaces is large: - -1) Address promotion. We are deleting all addresses, so there is no - point in doing this. - -2) A full nf conntrack table purge for every address. We only need to - do this once, as is already caught by the existing - masq_dev_notifier so masq_inet_event() can skip this. - -Reported-by: Solar Designer -Signed-off-by: David S. Miller -Tested-by: Cyrill Gorcunov ---- - net/ipv4/devinet.c | 4 ++++ - net/ipv4/fib_frontend.c | 4 ++++ - net/ipv4/netfilter/nf_nat_masquerade_ipv4.c | 12 ++++++++++-- - 3 files changed, 18 insertions(+), 2 deletions(-) - -diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c -index 65e76a4..e333bc8 100644 ---- a/net/ipv4/devinet.c -+++ b/net/ipv4/devinet.c -@@ -334,6 +334,9 @@ static void __inet_del_ifa(struct in_device *in_dev, struct in_ifaddr **ifap, - - ASSERT_RTNL(); - -+ if (in_dev->dead) -+ goto no_promotions; -+ - /* 1. Deleting primary ifaddr forces deletion all secondaries - * unless alias promotion is set - **/ -@@ -380,6 +383,7 @@ static void __inet_del_ifa(struct in_device *in_dev, struct in_ifaddr **ifap, - fib_del_ifaddr(ifa, ifa1); - } - -+no_promotions: - /* 2. Unlink it */ - - *ifap = ifa1->ifa_next; -diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c -index 4734475..21add55 100644 ---- a/net/ipv4/fib_frontend.c -+++ b/net/ipv4/fib_frontend.c -@@ -922,6 +922,9 @@ void fib_del_ifaddr(struct in_ifaddr *ifa, struct in_ifaddr *iprim) - subnet = 1; - } - -+ if (in_dev->dead) -+ goto no_promotions; -+ - /* Deletion is more complicated than add. - * We should take care of not to delete too much :-) - * -@@ -997,6 +1000,7 @@ void fib_del_ifaddr(struct in_ifaddr *ifa, struct in_ifaddr *iprim) - } - } - -+no_promotions: - if (!(ok & BRD_OK)) - fib_magic(RTM_DELROUTE, RTN_BROADCAST, ifa->ifa_broadcast, 32, prim); - if (subnet && ifa->ifa_prefixlen < 31) { -diff --git a/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c b/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c -index c6eb421..ea91058 100644 ---- a/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c -+++ b/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c -@@ -108,10 +108,18 @@ static int masq_inet_event(struct notifier_block *this, - unsigned long event, - void *ptr) - { -- struct net_device *dev = ((struct in_ifaddr *)ptr)->ifa_dev->dev; -+ struct in_device *idev = ((struct in_ifaddr *)ptr)->ifa_dev; - struct netdev_notifier_info info; - -- netdev_notifier_info_init(&info, dev); -+ /* The masq_dev_notifier will catch the case of the device going -+ * down. So if the inetdev is dead and being destroyed we have -+ * no work to do. Otherwise this is an individual address removal -+ * and we have to perform the flush. -+ */ -+ if (idev->dead) -+ return NOTIFY_DONE; -+ -+ netdev_notifier_info_init(&info, idev->dev); - return masq_device_event(this, event, &info); - } - --- -cgit v0.12 - diff --git a/kernel.spec b/kernel.spec index 9ff3cbe6f..a3e1587e1 100644 --- a/kernel.spec +++ b/kernel.spec @@ -69,7 +69,7 @@ Summary: The Linux kernel # The rc snapshot level %define rcrev 0 # The git snapshot level -%define gitrev 12 +%define gitrev 13 # Set rpm version accordingly %define rpmversion 4.%{upstream_sublevel}.0 %endif @@ -502,8 +502,8 @@ Patch451: lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch Patch452: arm64-avoid-needing-console-to-enable-serial-console.patch # http://www.spinics.net/lists/netdev/msg369442.html -Patch453: revert-stmmac-Fix-eth0-No-PHY-found-regression.patch -Patch454: stmmac-fix-MDIO-settings.patch +#atch453 revert-stmmac-Fix-eth0-No-PHY-found-regression.patch +#atch454 stmmac-fix-MDIO-settings.patch Patch456: arm64-acpi-drop-expert-patch.patch @@ -611,15 +611,9 @@ Patch641: disable-CONFIG_EXPERT-for-ZONE_DMA.patch #rhbz 1316136 Patch663: USB-serial-ftdi_sio-Add-support-for-ICP-DAS-I-756xU-.patch -#CVE-2016-3135 rhbz 1317386 1317387 -Patch664: netfilter-x_tables-check-for-size-overflow.patch - #CVE-2016-3134 rhbz 1317383 1317384 Patch665: netfilter-x_tables-deal-with-bogus-nextoffset-values.patch -#CVE-2016-3135 rhbz 1318172 1318270 -Patch666: ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch - Patch667: intel_pstate-Do-not-call-wrmsrl_on_cpu-with-disabled.patch #rhbz 1318596 @@ -2159,6 +2153,10 @@ fi # # %changelog +* Sat Mar 19 2016 Josh Boyer - 4.6.0-0.rc0.git13.1 +- Linux v4.5-8194-g1200b6809dfd +- net merge + * Sat Mar 19 2016 Josh Boyer - 4.6.0-0.rc0.git12.1 - Linux v4.5-6486-g6b5f04b6cf8e - cgroup, libata, workqueue, block, akpm, usb merges diff --git a/netfilter-x_tables-check-for-size-overflow.patch b/netfilter-x_tables-check-for-size-overflow.patch deleted file mode 100644 index 81e3d36fa..000000000 --- a/netfilter-x_tables-check-for-size-overflow.patch +++ /dev/null @@ -1,31 +0,0 @@ -Subject: [PATCH nf] netfilter: x_tables: check for size overflow -From: Florian Westphal -Date: 2016-03-10 0:56:23 - -Ben Hawkes says: - integer overflow in xt_alloc_table_info, which on 32-bit systems can - lead to small structure allocation and a copy_from_user based heap - corruption. - -Reported-by: Ben Hawkes -Signed-off-by: Florian Westphal ---- - net/netfilter/x_tables.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/net/netfilter/x_tables.c b/net/netfilter/x_tables.c -index c8a0b7d..17a9a9f 100644 ---- a/net/netfilter/x_tables.c -+++ b/net/netfilter/x_tables.c -@@ -659,6 +659,9 @@ struct xt_table_info *xt_alloc_table_info(unsigned int size) - struct xt_table_info *info = NULL; - size_t sz = sizeof(*info) + size; - -+ if (sz < sizeof(*info)) -+ return NULL; -+ - /* Pedantry: prevent them from hitting BUG() in vmalloc.c --RR */ - if ((SMP_ALIGN(size) >> PAGE_SHIFT) + 2 > totalram_pages) - return NULL; --- -2.4.10 diff --git a/sources b/sources index e0c2d6ed9..531f42a4d 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ a60d48eee08ec0536d5efb17ca819aef linux-4.5.tar.xz 6f557fe90b800b615c85c2ca04da6154 perf-man-4.5.tar.gz -085abf64e5402f2b588b9c64f09a6f44 patch-4.5-git11.xz -54b8c38a01b8b328cb65758b15e1b972 patch-4.5-git12.xz +88332b6b2ce510b016beecb992c60fb4 patch-4.5-git13.xz