From 5e0cf482406f79b4b90e09e199fd0d4e2423cf8c Mon Sep 17 00:00:00 2001 From: Dan Ziemba Date: Fri, 11 Sep 2015 16:42:57 -0400 Subject: [PATCH] 4.2-4 --- .SRCINFO | 4 +++- 0001-fix-bridge-regression.patch | 25 +++++++++++++++++++++++++ PKGBUILD | 8 +++++++- linux.install | 4 ++-- 4 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 0001-fix-bridge-regression.patch diff --git a/.SRCINFO b/.SRCINFO index 8ae7844..0800b30 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = linux-vfio pkgver = 4.2 - pkgrel = 3 + pkgrel = 4 url = http://www.kernel.org/ arch = i686 arch = x86_64 @@ -20,6 +20,7 @@ pkgbase = linux-vfio source = 0001-make_flush_workqueue_non_gpl.patch source = 0001-e1000e-Fix-tight-loop-implementation-of-systime-read.patch source = 0001-netfilter-conntrack-use-nf_ct_tmpl_free-in-CT-synpro.patch + source = 0001-fix-bridge-regression.patch source = override_for_missing_acs_capabilities.patch source = i915_317.patch sha256sums = cf20e044f17588d2a42c8f2a450b0fd84dfdbd579b489d93e9ab7d0e8b45dbeb @@ -31,6 +32,7 @@ pkgbase = linux-vfio sha256sums = 4e776734e2c2185910a6fbb6f333d967b04f4a72b3196310af286c6a779bd97d sha256sums = 0b1e41ba59ae45f5929963aa22fdc53bc8ffb4534e976cec046269d1a462197b sha256sums = 6ed9e31ae5614c289c4884620e45698e764c03670ebc45bab9319d741238cbd3 + sha256sums = 0a8fe4434e930d393c7983e335842f6cb77ee263af5592a0ca7e14bae7296183 sha256sums = 975f79348119bfba8dd972a9fbfe6b38484c45bfd228f2f6d48a0c02426ba149 sha256sums = 65faab45248008810b0a5f27162101a34dfe298c14d3506e52236c680353d7f8 diff --git a/0001-fix-bridge-regression.patch b/0001-fix-bridge-regression.patch new file mode 100644 index 0000000..250dfcb --- /dev/null +++ b/0001-fix-bridge-regression.patch @@ -0,0 +1,25 @@ +@@ -, +, @@ +--- + net/bridge/br_multicast.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) +--- a/net/bridge/br_multicast.c ++++ a/net/bridge/br_multicast.c +@@ -991,7 +991,7 @@ static int br_ip4_multicast_igmp3_report(struct net_bridge *br, + + ih = igmpv3_report_hdr(skb); + num = ntohs(ih->ngrec); +- len = sizeof(*ih); ++ len = skb_transport_offset(skb) + sizeof(*ih); + + for (i = 0; i < num; i++) { + len += sizeof(*grec); +@@ -1052,7 +1052,7 @@ static int br_ip6_multicast_mld2_report(struct net_bridge *br, + + icmp6h = icmp6_hdr(skb); + num = ntohs(icmp6h->icmp6_dataun.un_data16[1]); +- len = sizeof(*icmp6h); ++ len = skb_transport_offset(skb) + sizeof(*icmp6h); + + for (i = 0; i < num; i++) { + __be16 *nsrcs, _nsrcs; +-- diff --git a/PKGBUILD b/PKGBUILD index c90577c..584a7d5 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -3,7 +3,7 @@ pkgbase=linux-vfio _srcname=linux-4.2 pkgver=4.2 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') url="http://www.kernel.org/" license=('GPL2') @@ -21,6 +21,7 @@ source=("https://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz" '0001-make_flush_workqueue_non_gpl.patch' '0001-e1000e-Fix-tight-loop-implementation-of-systime-read.patch' '0001-netfilter-conntrack-use-nf_ct_tmpl_free-in-CT-synpro.patch' + '0001-fix-bridge-regression.patch' 'override_for_missing_acs_capabilities.patch' 'i915_317.patch' ) @@ -33,6 +34,7 @@ sha256sums=('cf20e044f17588d2a42c8f2a450b0fd84dfdbd579b489d93e9ab7d0e8b45dbeb' '4e776734e2c2185910a6fbb6f333d967b04f4a72b3196310af286c6a779bd97d' '0b1e41ba59ae45f5929963aa22fdc53bc8ffb4534e976cec046269d1a462197b' '6ed9e31ae5614c289c4884620e45698e764c03670ebc45bab9319d741238cbd3' + '0a8fe4434e930d393c7983e335842f6cb77ee263af5592a0ca7e14bae7296183' '975f79348119bfba8dd972a9fbfe6b38484c45bfd228f2f6d48a0c02426ba149' '65faab45248008810b0a5f27162101a34dfe298c14d3506e52236c680353d7f8') validpgpkeys=( @@ -64,6 +66,10 @@ prepare() { # many instances of this error: nf_conntrack: table full, dropping packet patch -p1 -i "${srcdir}/0001-netfilter-conntrack-use-nf_ct_tmpl_free-in-CT-synpro.patch" + # add not-yes-mainlined patch to fix bridge code + # https://bugzilla.kernel.org/show_bug.cgi?id=104161 + patch -Np1 -i "${srcdir}/0001-fix-bridge-regression.patch" + # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) diff --git a/linux.install b/linux.install index ef42413..dd2fa5c 100644 --- a/linux.install +++ b/linux.install @@ -8,7 +8,7 @@ post_install () { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." mkinitcpio -p linux${KERNEL_NAME} } @@ -20,7 +20,7 @@ post_upgrade() { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." mkinitcpio -p linux${KERNEL_NAME} if [ $(vercmp $2 3.13) -lt 0 ]; then