WS2008 R2 does not support udp checksum offload. Furthermore, ws2012 and
ws2012 r2 have issues offloading udp checksum from Linux guests.
This patch-set addresses these issues as well as other bug fixes.
Please apply.
K. Y. Srinivasan (3):
Drivers: net: hyperv: Allocate memory for all possible
An outgoing packet can potentially need per-packet information for
all the offloads and VLAN tagging. Fix this issue.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/netvsc_drv.c |4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a
locks
were identified as potential bottlenecks. This patch-set gets rid of these
locks by leveraging the interrupt bindings that we support starting with win8.
K. Y. Srinivasan (2):
Drivers: hv: Eliminate the channel spinlock in the callback path
Drivers: hv: vmbus: Implement per-CPU mapping
By ensuring that we set the callback handler to NULL in the channel close
path on the same CPU that the channel is bound to, we can eliminate this lock
acquisition and release in a performance critical path.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/hv/channel.c
. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/hv/channel_mgmt.c | 41 -
drivers/hv/connection.c | 24 +++-
drivers/hv/hv.c |2 ++
drivers/hv/hyperv_vmbus.h |5 +
include/linux/hyperv.h|5
to COWing the skb prior to modifying the header (patch 3/3).
K. Y. Srinivasan (3):
Drivers: net: hyperv: Allocate memory for all possible per-pecket
information
Drivers: net: hyperv: Negotiate suitable ndis version for offload
support
Drivers: net: hyperv: Address UDP checksum issues
this version, I have COWed the skb
before modifying the UDP header (the checksum field).
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |1 +
drivers/net/hyperv/netvsc_drv.c | 26 +-
drivers/net/hyperv/rndis_filter.c |
An outgoing packet can potentially need per-packet information for
all the offloads and VLAN tagging. Fix this issue.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/netvsc_drv.c |4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a
Ws2008R2 supports ndis_version 6.1 and 6.1 is the minimal version required
for various offloads. Negotiate ndis_version 6.1 when on ws2008r2.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/netvsc.c |2 +-
1 files changed, 1 insertions(+), 1 deletions
Return the appropriate error code and handle the case when the target
file exists correctly. This fixes a bug.
Signed-off-by: K. Y. Srinivasan
Cc: [3.14]
---
include/uapi/linux/hyperv.h |1 +
tools/hv/hv_fcopy_daemon.c |4 +++-
2 files changed, 4 insertions(+), 1 deletions(-)
diff
Probe for the existance of legacy PIC, if one does not exist, use the
null_legacy_pic.
This patch implements the proposal put forth by H. Peter Anvin
.
Signed-off-by: K. Y. Srinivasan
---
arch/x86/kernel/cpu/mshyperv.c |2 --
arch/x86/kernel/i8259.c| 11 +++
2 files
Probe for the existance of legacy PIC, if one does not exist, use the
null_legacy_pic.
This patch implements the proposal put forth by H. Peter Anvin
.
In this version of the patch I have cleaned up the code based on comments from
Peter.
Signed-off-by: K. Y. Srinivasan
---
arch/x86/kernel
comments from Peter.
Signed-off-by: K. Y. Srinivasan
---
arch/x86/kernel/cpu/mshyperv.c |2 --
arch/x86/kernel/i8259.c| 19 +++
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index
ments
(jbeul...@suse.com).
Signed-off-by: K. Y. Srinivasan
---
arch/x86/kernel/cpu/mshyperv.c |2 --
arch/x86/kernel/i8259.c| 20 +++-
2 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index 47
I have addressed additional comments from Peter.
Signed-off-by: K. Y. Srinivasan
---
arch/x86/kernel/cpu/mshyperv.c |2 --
arch/x86/kernel/i8259.c| 20 +++-
2 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kerne
chanism in this patch.
With this patch (and all of the other offload and VRSS patches), we are now able
to almost saturate a 10G interface between Linux VMs on Hyper-V
on different hosts - close to 9 Gbps as measured via iperf.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
d
in this driver.
Signed-off-by: K. Y. Srinivasan
Cc: sta...@vger.kernel.org
---
drivers/hv/hv_balloon.c | 29 ++---
1 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/drivers/hv/hv_balloon.c b/drivers/hv/hv_balloon.c
index 7e6d78d..5e90c5d 100644
--- a
via iperf.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 14 +++
drivers/net/hyperv/netvsc.c | 226 +--
drivers/net/hyperv/netvsc_drv.c |3 +-
3 files changed, 234 insertions(+), 9 deletions(-)
di
Do checksum offload only if the client of the driver wants checksum to be
offloaded. Also Windows hosts support ip header checksum offload as well -
take advantage of that.
This patch fixes a bug that is exposed in gateway scenarios.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
Do checksum offload only if the client of the driver wants checksum to be
offloaded.
In this version of the patch, I have addressed comments from
Stephen Hemminger and
Eric Dumazet .
This patch fixes a bug that is exposed in gateway scenarios.
Signed-off-by: K. Y. Srinivasan
Reviewed-by
Drivers: hv: vmbus: release relid on error in vmbus_process_offer()
Drivers: hv: vmbus: channge vmbus_connection.channel_lock to mutex
Jake Oshins (1):
drivers:hv: Allow for MMIO claims that span ACPI _CRS records
K. Y. Srinivasan (4):
Drivers: hv: vmbus: Use uuid_le type consistently
Use the uuid_le_cmp() macro for comparing GUIDs.
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c |3 +--
drivers/hv/vmbus_drv.c|4 ++--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 38470aa
From: Jake Oshins
This patch makes 16GB GPUs work in Hyper-V VMs, since, for
compatibility reasons, the Hyper-V BIOS lists MMIO ranges in 2GB
chunks in its root bus's _CRS object.
Signed-off-by: Jake Oshins
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/vmbus_drv.c | 16 ++
Consistently use uuid_le type in the Hyper-V driver code.
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c |2 +-
drivers/hv/vmbus_drv.c | 10 ++--
include/linux/hyperv.h | 92 +-
include/linux/mod_devicetable.h
From: Dexuan Cui
spinlock is unnecessary here.
mutex is enough.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 12 ++--
drivers/hv/connection.c |7 +++
drivers/hv/hyperv_vmbus.h |2 +-
3 files changed, 10 insertions(+), 11
the issue by moving hv_process_channel_removal()
from vmbus_close_internal() to vmbus_device_release(), since the latter is
always invoked on device_unregister(), whether or not the dev has a driver
loaded.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.
The irq we extract from ACPI is not used - we deliver hypervisor
interrupts on a special vector. Make the necessary adjustments.
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/vmbus_drv.c | 16 +++-
1 files changed, 3 insertions(+), 13 deletions(-)
diff --git a/drivers/hv
From: Dexuan Cui
This fixes an incorrect assumption of channel state in the function.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 12
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/drivers/hv/channel.c b/drivers/hv
The macro VMBUS_DEVICE() is unused; get rid of it.
Signed-off-by: K. Y. Srinivasan
---
include/linux/hyperv.h | 13 -
1 files changed, 0 insertions(+), 13 deletions(-)
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index ee243a7..437c9c8 100644
--- a/include/linux
: Olaf Hering
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_snapshot.c |5 +
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/hv/hv_snapshot.c b/drivers/hv/hv_snapshot.c
index a548ae4..81882d4 100644
--- a/drivers/hv/hv_snapshot.c
+++ b/drivers/hv/hv_snapshot.c
by disabling the tasklet when
the latter is running here.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 21 +++--
1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
index c4dcab0..f7f3
From: Dexuan Cui
We want to simplify vmbus_onoffer_rescind() by not invoking
hv_process_channel_removal(NULL, ...).
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 21 +++--
1 files changed, 15 insertions(+), 6 deletions(-)
diff
: Allow for MMIO claims that span ACPI _CRS records
K. Y. Srinivasan (4):
Drivers: hv: vmbus: Use uuid_le type consistently
Drivers: hv: vmbus: Use uuid_le_cmp() for comparing GUIDs
Drivers: hv: vmbus: Get rid of the unused macro
Drivers: hv: vmbus: Get rid of the unused irq variable
Kamal
The macro VMBUS_DEVICE() is unused; get rid of it.
Signed-off-by: K. Y. Srinivasan
---
include/linux/hyperv.h | 13 -
1 files changed, 0 insertions(+), 13 deletions(-)
diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
index ee243a7..437c9c8 100644
--- a/include/linux
From: Jake Oshins
This patch makes 16GB GPUs work in Hyper-V VMs, since, for
compatibility reasons, the Hyper-V BIOS lists MMIO ranges in 2GB
chunks in its root bus's _CRS object.
Signed-off-by: Jake Oshins
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/vmbus_drv.c | 16 ++
Use uuid_le_cmp() for comparing GUIDs.
Signed-off-by: K. Y. Srinivasan
---
V2: Fixed the typo in both the commit log and Subject line.
drivers/hv/channel_mgmt.c |3 +--
drivers/hv/vmbus_drv.c|4 ++--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/hv
by disabling the tasklet when
the latter is running here.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 21 +++--
1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
index c4dcab0..f7f3
Consistently use uuid_le type in the Hyper-V driver code.
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c |2 +-
drivers/hv/vmbus_drv.c | 10 ++--
include/linux/hyperv.h | 92 +-
include/linux/mod_devicetable.h
: Olaf Hering
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_snapshot.c |5 +
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/hv/hv_snapshot.c b/drivers/hv/hv_snapshot.c
index a548ae4..81882d4 100644
--- a/drivers/hv/hv_snapshot.c
+++ b/drivers/hv/hv_snapshot.c
From: Dexuan Cui
spinlock is unnecessary here.
mutex is enough.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 12 ++--
drivers/hv/connection.c |7 +++
drivers/hv/hyperv_vmbus.h |2 +-
3 files changed, 10 insertions(+), 11
the issue by moving hv_process_channel_removal()
from vmbus_close_internal() to vmbus_device_release(), since the latter is
always invoked on device_unregister(), whether or not the dev has a driver
loaded.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.
The irq we extract from ACPI is not used - we deliver hypervisor
interrupts on a special vector. Make the necessary adjustments.
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/vmbus_drv.c | 16 +++-
1 files changed, 3 insertions(+), 13 deletions(-)
diff --git a/drivers/hv
From: Dexuan Cui
We want to simplify vmbus_onoffer_rescind() by not invoking
hv_process_channel_removal(NULL, ...).
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 21 +++--
1 files changed, 15 insertions(+), 6 deletions(-)
diff
From: Dexuan Cui
This fixes an incorrect assumption of channel state in the function.
Signed-off-by: Dexuan Cui
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 12
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/drivers/hv/channel.c b/drivers/hv
From: Kamal Mostafa
Use the local uapi headers to keep in sync with "recently" added #define's
(e.g. VSS_OP_REGISTER1).
Fixes: 3eb2094c59e89db2bedd401e23c7a870081c9edb
Signed-off-by: Kamal Mostafa
Signed-off-by: K. Y. Srinivasan
---
tools/hv/Makefile |2 ++
1 files change
patch aligns Tsc page invalid sequence value with
Windows Hyper-V guest implementation which is more
compatible with both Hyper-V hypervisor and KVM hypervisor.
Signed-off-by: Andrey Smetanin
Signed-off-by: Denis V. Lunev
CC: "K. Y. Srinivasan"
CC: Haiyang Zhang
CC: Vitaly Kuznetsov
Fix a couple of bugs.
Andrey Smetanin (1):
drivers/hv: correct tsc page sequence invalid value
K. Y. Srinivasan (1):
Drivers: hv: vmbus: Fix a Host signaling bug
drivers/hv/channel.c | 18 ++
drivers/hv/hv.c|4 ++--
include/linux/hyperv.h | 12
signaling, we will not be able to signal
the host subsequently when the client does want to signal since the
ring buffer state will prevent the signaling. Implement logic to
have only one signaling policy in force for a given channel.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
Fix a couple of bugs. In this version I have addressed
review comments from Vitaly.
Andrey Smetanin (1):
drivers/hv: correct tsc page sequence invalid value
K. Y. Srinivasan (1):
Drivers: hv: vmbus: Fix a Host signaling bug
drivers/hv/channel.c | 18 ++
drivers/hv/hv.c
signaling, we will not be able to signal
the host subsequently when the client does want to signal since the
ring buffer state will prevent the signaling. Implement logic to
have only one signaling policy in force for a given channel.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
patch aligns Tsc page invalid sequence value with
Windows Hyper-V guest implementation which is more
compatible with both Hyper-V hypervisor and KVM hypervisor.
Signed-off-by: Andrey Smetanin
Signed-off-by: Denis V. Lunev
CC: "K. Y. Srinivasan"
CC: Haiyang Zhang
CC: Vitaly Kuznetsov
Eliminate send_completion from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |3 +--
drivers/net/hyperv/netvsc.c |6 +++---
drivers/net/hyperv/netvsc_drv.c |2 +-
drivers/net/hyperv/rndis_filter.c
Eliminate send_completion_ctx from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c |3 +--
drivers/net/hyperv/netvsc_drv.c |1 -
3 files changed, 1 insertions(+), 4
etvsc packet in control buffer area in the skb.
K. Y. Srinivasan (8):
hv_netvsc: Resize some of the variables in hv_netvsc_packet
hv_netvsc: Rearrange the hv_negtvsc_packet to be space efficient
hv_netvsc: Eliminate the channel field in hv_netvsc_packet structure
hv_netvsc: Eliminate rndis_msg po
As part of reducing the size of the hv_netvsc_packet, resize some of the
variables based on their usage.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 14 +++---
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers
Eliminate the channel field in hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 22 ++
drivers/net/hyperv/netvsc.c | 19 ---
drivers/net/hyperv/netvsc_drv.c |5
From: Vitaly Kuznetsov
Packet scheduler guarantees there won't be multiple senders for the same
queue and as we use q_idx for multi_send_data the spinlock is redundant.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
driver
Eliminatte the data field from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |5 ++---
drivers/net/hyperv/netvsc.c |5 +++--
drivers/net/hyperv/netvsc_drv.c |3 ++-
drivers/net/hyperv/rndis_filter.c
ff-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |3 +++
drivers/net/hyperv/netvsc_drv.c | 28 +---
2 files changed, 12 insertions(+), 19 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
Rearrange the elements of struct hv_negtvsc_packet for optimal layout -
eliminate unnecessary padding.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 18 ++
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a
From: Vitaly Kuznetsov
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h | 15 ---
drivers/net/hyperv/netvsc.c |5 ++---
drivers/net/hyperv/netvsc_drv.c |3 +++
3 files changed, 5 insertions(+), 18 deletions(-)
diff
Eliminate rndis_msg pointer from hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |8 +++-
drivers/net/hyperv/netvsc.c | 10 ++
drivers/net/hyperv/netvsc_drv.c |7 +++
drivers/net
e the
netvsc packet in control buffer area in the skb.
V2: - Addressed review comments:
- Eliminated more fields from netvsc packet structure.
K. Y. Srinivasan (15):
hv_netvsc: Resize some of the variables in hv_netvsc_packet
hv_netvsc: Rearrange the hv_negtvsc_packet to be space effi
From: Vitaly Kuznetsov
Packet scheduler guarantees there won't be multiple senders for the same
queue and as we use q_idx for multi_send_data the spinlock is redundant.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
driver
Eliminate send_completion_tid from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |8 ++--
drivers/net/hyperv/netvsc.c | 28 ++--
drivers/net/hyperv/netvsc_drv.c | 14 ++
drivers/net/hyperv
Eliminate send_completion_ctx from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c |3 +--
drivers/net/hyperv/netvsc_drv.c |1 -
3 files changed, 1 insertions(+), 4
Eliminate rndis_msg pointer from hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |8 +++-
drivers/net/hyperv/netvsc.c | 10 ++
drivers/net/hyperv/netvsc_drv.c |7 +++
drivers/net
Eliminate status from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c |6 ++
drivers/net/hyperv/netvsc_drv.c |8 ++--
drivers/net/hyperv/rndis_filter.c | 20 +---
4
ff-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
v2: When HYPERV_NET is configured, set LL_MAX_HEADER to 128 - Vitaly
Kuznetsov
V2: Add a build time check on the skb control buffer - Florian Westphal
drivers/net/hyperv/hyperv_net.h |3 +++
drivers/net/hyperv/netvsc_
Eliminate vlan_tci from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |4 ++--
drivers/net/hyperv/netvsc_drv.c | 14 +++---
drivers/net/hyperv/rndis_filter.c |7 +++
3 files changed, 12 insertions(+), 13 deletions(-)
diff
From: Vitaly Kuznetsov
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h | 15 ---
drivers/net/hyperv/netvsc.c |5 ++---
drivers/net/hyperv/netvsc_drv.c |3 +++
3 files changed, 5 insertions(+), 18 deletions(-)
diff
Rearrange the elements of struct hv_negtvsc_packet for optimal layout -
eliminate unnecessary padding.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 18 ++
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a
Eliminate the channel field in hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 22 ++
drivers/net/hyperv/netvsc.c | 19 ---
drivers/net/hyperv/netvsc_drv.c |5
Eliminate send_completion from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |3 +--
drivers/net/hyperv/netvsc.c |6 +++---
drivers/net/hyperv/netvsc_drv.c |2 +-
drivers/net/hyperv/rndis_filter.c
Eliminatte the data field from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |5 ++---
drivers/net/hyperv/netvsc.c |5 +++--
drivers/net/hyperv/netvsc_drv.c |3 ++-
drivers/net/hyperv/rndis_filter.c
Eliminate completion_func from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc_drv.c |3 ---
drivers/net/hyperv/rndis_filter.c |1 -
3 files changed, 0 insertions(+), 5 deletions(-)
diff --git a
Eliminate xmit_more from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c | 13 -
drivers/net/hyperv/netvsc_drv.c |1 -
drivers/net/hyperv/rndis_filter.c |2 --
4 files changed, 8
Eliminate page_buf from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |4 ++--
drivers/net/hyperv/netvsc.c | 25 ++---
drivers/net/hyperv/netvsc_drv.c | 11 ++-
drivers/net
As part of reducing the size of the hv_netvsc_packet, resize some of the
variables based on their usage.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 14 +++---
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers
Eliminate is_data_pkt from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c | 14 --
drivers/net/hyperv/netvsc_drv.c |1 -
drivers/net/hyperv/rndis_filter.c |1 -
4 files changed, 8
Greg, over the last month or more we have sent numerous Hyper-V patches and
these are yet to be comitted (all review comments have been addressed
for these patches). Please let me know if I should resend these patches.
Regards,
K. Y
___
devel
e the
netvsc packet in control buffer area in the skb.
V2: - Addressed review comments:
- Eliminated more fields from netvsc packet structure.
V3: - Fixed a typo in patch: hv_netvsc: Don't ask for additional head room in
the skb.
K. Y. Srinivasan (15):
hv_netvsc: Resize some of the
Eliminate xmit_more from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c | 13 -
drivers/net/hyperv/netvsc_drv.c |1 -
drivers/net/hyperv/rndis_filter.c |2 --
4 files changed, 8
From: Vitaly Kuznetsov
Packet scheduler guarantees there won't be multiple senders for the same
queue and as we use q_idx for multi_send_data the spinlock is redundant.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
driver
Eliminatte the data field from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |5 ++---
drivers/net/hyperv/netvsc.c |5 +++--
drivers/net/hyperv/netvsc_drv.c |3 ++-
drivers/net/hyperv/rndis_filter.c
Eliminate completion_func from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc_drv.c |3 ---
drivers/net/hyperv/rndis_filter.c |1 -
3 files changed, 0 insertions(+), 5 deletions(-)
diff --git a
Eliminate vlan_tci from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |4 ++--
drivers/net/hyperv/netvsc_drv.c | 14 +++---
drivers/net/hyperv/rndis_filter.c |7 +++
3 files changed, 12 insertions(+), 13 deletions(-)
diff
Eliminate send_completion_tid from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |8 ++--
drivers/net/hyperv/netvsc.c | 28 ++--
drivers/net/hyperv/netvsc_drv.c | 14 ++
drivers/net/hyperv
Eliminate status from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c |6 ++
drivers/net/hyperv/netvsc_drv.c |8 ++--
drivers/net/hyperv/rndis_filter.c | 20 +---
4
Eliminate send_completion_ctx from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c |3 +--
drivers/net/hyperv/netvsc_drv.c |1 -
3 files changed, 1 insertions(+), 4
Eliminate send_completion from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |3 +--
drivers/net/hyperv/netvsc.c |6 +++---
drivers/net/hyperv/netvsc_drv.c |2 +-
drivers/net/hyperv/rndis_filter.c
Eliminate page_buf from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |4 ++--
drivers/net/hyperv/netvsc.c | 25 ++---
drivers/net/hyperv/netvsc_drv.c | 11 ++-
drivers/net
Rearrange the elements of struct hv_negtvsc_packet for optimal layout -
eliminate unnecessary padding.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 18 ++
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a
Eliminate is_data_pkt from struct hv_netvsc_packet.
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h |1 -
drivers/net/hyperv/netvsc.c | 14 --
drivers/net/hyperv/netvsc_drv.c |1 -
drivers/net/hyperv/rndis_filter.c |1 -
4 files changed, 8
As part of reducing the size of the hv_netvsc_packet, resize some of the
variables based on their usage.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 14 +++---
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers
Eliminate rndis_msg pointer from hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h |8 +++-
drivers/net/hyperv/netvsc.c | 10 ++
drivers/net/hyperv/netvsc_drv.c |7 +++
drivers/net
ff-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
V2: When HYPERV_NET is configured, set LL_MAX_HEADER to 128 - Vitaly
Kuznetsov
V2: Add a build time check on the skb control buffer - Florian Westphal
V3: Fix a typo - David Miller
drivers/net/hyperv/hyperv_net.h |
Eliminate the channel field in hv_netvsc_packet structure.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
---
drivers/net/hyperv/hyperv_net.h | 22 ++
drivers/net/hyperv/netvsc.c | 19 ---
drivers/net/hyperv/netvsc_drv.c |5
From: Vitaly Kuznetsov
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/net/hyperv/hyperv_net.h | 15 ---
drivers/net/hyperv/netvsc.c |5 ++---
drivers/net/hyperv/netvsc_drv.c |3 +++
3 files changed, 5 insertions(+), 18 deletions(-)
diff
From: Yash Shah
The kmem_cache_destroy() function tests whether its argument is NULL
and then returns immediately.
Thus the NULL check before calling this function is not needed.
This issue was detected by using the Coccinelle software.
Signed-off-by: Yash Shah
---
drivers/staging/rdma/ehca/
201 - 300 of 975 matches
Mail list logo