This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".
The branch, next has been updated
via 5b3bd19f310f8389eef1bb0d4107bce4aab26cb1 (commit)
via b63c35cae117ed4fb0871955b741016915ba61da (commit)
from a8d9f5cec1db248c75dc991d21186da554ca48ec (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 5b3bd19f310f8389eef1bb0d4107bce4aab26cb1
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date: Sun Mar 29 19:46:14 2015 +0200
kernel: fix hyperv net driver for legacy hyperv 2008.
commit b63c35cae117ed4fb0871955b741016915ba61da
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date: Sun Mar 29 19:38:12 2015 +0200
kernel: disable igb vendor modul build
the igb that is included to driver backports seems to be better.
-----------------------------------------------------------------------
Summary of changes:
lfs/linux | 3 ++
make.sh | 8 ++---
src/patches/linux-3.14.x-hyperv-2008-fix.patch | 50 ++++++++++++++++++++++++++
3 files changed, 57 insertions(+), 4 deletions(-)
create mode 100644 src/patches/linux-3.14.x-hyperv-2008-fix.patch
Difference in files:
diff --git a/lfs/linux b/lfs/linux
index 17a1297..7ac13d6 100644
--- a/lfs/linux
+++ b/lfs/linux
@@ -164,6 +164,9 @@ endif
# r8169 L23 patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.32-r8169_disable_L23.patch
+ # HyperV 2008 patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.x-hyperv-2008-fix.patch
+
ifeq "$(KCFG)" "-kirkwood"
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.22-kirkwood_legacy_boot.patch
diff --git a/make.sh b/make.sh
index 4deb3c8..0326a90 100755
--- a/make.sh
+++ b/make.sh
@@ -411,7 +411,7 @@ buildipfire() {
ipfiremake backports KCFG="-pae"
ipfiremake cryptodev KCFG="-pae"
ipfiremake e1000e KCFG="-pae"
- ipfiremake igb KCFG="-pae"
+# ipfiremake igb KCFG="-pae"
ipfiremake ixgbe KCFG="-pae"
ipfiremake linux-initrd KCFG="-pae"
@@ -420,7 +420,7 @@ buildipfire() {
ipfiremake backports KCFG=""
ipfiremake cryptodev KCFG=""
ipfiremake e1000e KCFG=""
- ipfiremake igb KCFG=""
+# ipfiremake igb KCFG=""
ipfiremake ixgbe KCFG=""
ipfiremake linux-initrd KCFG=""
;;
@@ -437,7 +437,7 @@ buildipfire() {
ipfiremake backports KCFG="-multi"
ipfiremake cryptodev KCFG="-multi"
ipfiremake e1000e KCFG="-multi"
- ipfiremake igb KCFG="-multi"
+# ipfiremake igb KCFG="-multi"
ipfiremake ixgbe KCFG="-multi"
ipfiremake linux-initrd KCFG="-multi"
@@ -446,7 +446,7 @@ buildipfire() {
ipfiremake backports KCFG="-kirkwood"
ipfiremake cryptodev KCFG="-kirkwood"
ipfiremake e1000e KCFG="-kirkwood"
- ipfiremake igb KCFG="-kirkwood"
+# ipfiremake igb KCFG="-kirkwood"
ipfiremake ixgbe KCFG="-kirkwood"
ipfiremake linux-initrd KCFG="-kirkwood"
;;
diff --git a/src/patches/linux-3.14.x-hyperv-2008-fix.patch b/src/patches/linux-3.14.x-hyperv-2008-fix.patch
new file mode 100644
index 0000000..e538e08
--- /dev/null
+++ b/src/patches/linux-3.14.x-hyperv-2008-fix.patch
@@ -0,0 +1,50 @@
+From 99d3016de4f2a29635f5382b0e9bd0e5f2151487 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz(a)microsoft.com>
+Date: Sun, 9 Mar 2014 16:10:59 -0700
+Subject: hyperv: Change the receive buffer size for legacy hosts
+
+Due to a bug in the Hyper-V host verion 2008R2, we need to use a slightly smaller
+receive buffer size, otherwise the buffer will not be accepted by the legacy hosts.
+
+Signed-off-by: Haiyang Zhang <haiyangz(a)microsoft.com>
+Signed-off-by: David S. Miller <davem(a)davemloft.net>
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 7d06b49..13010b4 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -513,6 +513,7 @@ struct nvsp_message {
+ #define NETVSC_MTU 65536
+
+ #define NETVSC_RECEIVE_BUFFER_SIZE (1024*1024*16) /* 16MB */
++#define NETVSC_RECEIVE_BUFFER_SIZE_LEGACY (1024*1024*15) /* 15MB */
+
+ #define NETVSC_RECEIVE_BUFFER_ID 0xcafe
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 1a0280d..daddea2 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -365,6 +365,11 @@ static int netvsc_connect_vsp(struct hv_device *device)
+ goto cleanup;
+
+ /* Post the big receive buffer to NetVSP */
++ if (net_device->nvsp_version <= NVSP_PROTOCOL_VERSION_2)
++ net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE_LEGACY;
++ else
++ net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE;
++
+ ret = netvsc_init_recv_buf(device);
+
+ cleanup:
+@@ -898,7 +903,6 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+ ndev = net_device->ndev;
+
+ /* Initialize the NetVSC channel extension */
+- net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE;
+ spin_lock_init(&net_device->recv_pkt_list_lock);
+
+ INIT_LIST_HEAD(&net_device->recv_pkt_list);
+--
+cgit v0.10.2
+
hooks/post-receive
--
IPFire 2.x development tree