02 Aug, 2013
1 commit
-
Remove HV_DRV_VERSION, it has no meaning for upstream drivers.
Initially it was supposed to show the "Linux Integration Services"
version, now it is not in sync anymore with the out-of-tree drivers
available from the MSFT website.The only place where a version string is still required is the KVP
command "IntegrationServicesVersion" which is handled by
tools/hv/hv_kvp_daemon.c. To satisfy such KVP request from the host pass
the current string to the daemon during KVP userland registration.Signed-off-by: Olaf Hering
Acked-by: K. Y. Srinivasan
Signed-off-by: Greg Kroah-Hartman
17 Jul, 2013
1 commit
-
SG mode is not currently supported by netvsc, so remove this flag for now.
Otherwise, it will be unconditionally enabled by commit ec5f0615642
"Kill link between CSUM and SG features"
Previously, the SG feature is disabled because CSUM is not set here.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
18 Jun, 2013
1 commit
-
We should call __vlan_hwaccel_put_tag() only if the packet
comes from vlan, otherwise VLAN_TAG_PRESENT will always be
added.Reported-by: Olaf Hering
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
01 Jun, 2013
1 commit
-
Since the recent addition of 8021AD, we need to set the new field vlan_proto in
sk_buff. Otherwise, it will trigger BUG() call in vlan_proto_idx().This patch fixes the problem.
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
30 Apr, 2013
1 commit
-
Fixed: warning: cast from pointer to integer of different size
The Hyper-V hosts always use 64 bit request id. The guests can have 32 or 64
bit pointers which equal to the ulong type size. So we cast it to ulong type.
And, assigning 32bit integer to 64 bit variable works fine.The VMBus returns the same id in the completion packet. But the value has no
effect on the host side.Reported-by: kbuild test robot
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
23 Apr, 2013
1 commit
-
Conflicts:
drivers/net/ethernet/emulex/benet/be_main.c
drivers/net/ethernet/intel/igb/igb_main.c
drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
include/net/scm.h
net/batman-adv/routing.c
net/ipv4/tcp_input.cThe e{uid,gid} --> {uid,gid} credentials fix conflicted with the
cleanup in net-next to now pass cred structs around.The be2net driver had a bug fix in 'net' that overlapped with the VLAN
interface changes by Patrick McHardy in net-next.An IGB conflict existed because in 'net' the build_skb() support was
reverted, and in 'net-next' there was a comment style fix within that
code.Several batman-adv conflicts were resolved by making sure that all
calls to batadv_is_my_mac() are changed to have a new bat_priv first
argument.Eric Dumazet's TS ECR fix in TCP in 'net' conflicted with the F-RTO
rewrite in 'net-next', mostly overlapping changes.Thanks to Stephen Rothwell and Antonio Quartulli for help with several
of these merge resolutions.Signed-off-by: David S. Miller
20 Apr, 2013
1 commit
-
Rename the hardware VLAN acceleration features to include "CTAG" to indicate
that they only support CTAGs. Follow up patches will introduce 802.1ad
server provider tagging (STAGs) and require the distinction for hardware not
supporting acclerating both.Signed-off-by: Patrick McHardy
Signed-off-by: David S. Miller
09 Apr, 2013
2 commits
-
In some cases, the VM_PKT_COMP message can arrive later than RNDIS completion
message, which will free the packet memory. This may cause panic due to access
to freed memory in netvsc_send_completion().This patch fixes this problem by removing rndis_filter_send_request_completion()
from the code path. The function was a no-op.Reported-by: Long Li
Tested-by: Long Li
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
The warning about local_bh_enable inside IRQ happens when disconnecting a
virtual NIC.The reason for the warning is -- netif_tx_disable() is called when the NIC
is disconnected. And it's called within irq context. netif_tx_disable() calls
local_bh_enable() which displays warning if in irq.The fix is to remove the unnecessary netif_tx_disable & wake_queue() in the
netvsc_linkstatus_callback().Reported-by: Richard Genoud
Tested-by: Long Li
Tested-by: Richard Genoud
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
22 Feb, 2013
1 commit
-
Pull char/misc driver patches from Greg Kroah-Hartman:
"Here's the big char/misc driver patches for 3.9-rc1.Nothing major here, just lots of different driver updates (mei,
hyperv, ipack, extcon, vmci, etc.).All of these have been in the linux-next tree for a while."
* tag 'char-misc-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (209 commits)
w1: w1_therm: Add force-pullup option for "broken" sensors
w1: ds2482: Added 1-Wire pull-up support to the driver
vme: add missing put_device() after device_register() fails
extcon: max8997: Use workqueue to check cable state after completing boot of platform
extcon: max8997: Set default UART/USB path on probe
extcon: max8997: Consolidate duplicate code for checking ADC/CHG cable type
extcon: max8997: Set default of ADC debounce time during initialization
extcon: max8997: Remove duplicate code related to set H/W line path
extcon: max8997: Move defined constant to header file
extcon: max77693: Make max77693_extcon_cable static
extcon: max8997: Remove unreachable code
extcon: max8997: Make max8997_extcon_cable static
extcon: max77693: Remove unnecessary goto statement to improve readability
extcon: max77693: Convert to devm_input_allocate_device()
extcon: gpio: Rename filename of extcon-gpio.c according to kernel naming style
CREDITS: update email and address of Harald Hoyer
extcon: arizona: Use MICDET for final microphone identification
extcon: arizona: Always take the first HPDET reading as the final one
extcon: arizona: Clear _trig_sts bits after jack detection
extcon: arizona: Don't HPDET magic when headphones are enabled
...
30 Jan, 2013
1 commit
-
Bring in the 'net' tree so that we can get some ipv4/ipv6 bug
fixes that some net-next work will build upon.Signed-off-by: David S. Miller
26 Jan, 2013
1 commit
-
Use the consolidated GUID definitions in the Hyper-V network driver.
Signed-off-by: K. Y. Srinivasan
Reviewed-by: Haiyang Zhang
Signed-off-by: Greg Kroah-Hartman
20 Jan, 2013
1 commit
-
This patch fixed wrong mac length, it should be ETH_ALEN,
also replaced the hardcode 6 in hyperv_net.hSigned-off-by: Amos Kong
Signed-off-by: David S. Miller
07 Jan, 2013
1 commit
-
Use strlcpy where possible to ensure the string is \0 terminated.
Use always sizeof(string) instead of 32, ETHTOOL_BUSINFO_LEN
and custom defines.
Use snprintf instead of sprint.
Remove unnecessary inits of ->fw_version
Remove unnecessary inits of drvinfo struct.Signed-off-by: Jiri Pirko
Signed-off-by: David S. Miller
01 Dec, 2012
1 commit
-
This message indicates an error returned from the host when changing MAC address.
Reported-by: Michal Kubecek
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
22 Oct, 2012
1 commit
-
Checked with Windows networking team, there is only one RNDIS message
in each netvsc packet.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
03 Oct, 2012
6 commits
-
In some response messages, there may be some extended info after the
message.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
The existing code always reports NVSP_STAT_SUCCESS. This patch adds the
mechanism to report failure when it happens.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
The receive code path doesn't use the page buffer, so remove the
extra allocated space here.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
To prevent possible data corruption in RNDIS requests, add another
page buffer if the request message crossed page boundary.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
Return ETIMEDOUT when the reply message is not received in time.
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
According to RNDIS specs, Windows sets this size to
0x4000. I use the same value here.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
15 Aug, 2012
1 commit
-
I believe net/core/dev.c is a better place for netif_notify_peers(),
because other net event notify functions also stay in this file.And rename it to netdev_notify_peers().
Cc: David S. Miller
Cc: Ian Campbell
Signed-off-by: Cong Wang
Signed-off-by: David S. Miller
10 Aug, 2012
1 commit
-
Reported-by: Olaf Hering
Signed-off-by: Haiyang Zhang
Signed-off-by: David S. Miller
04 Aug, 2012
1 commit
-
We need to wait for send_completion msg before put_rndis_request() at
the end of rndis_filter_halt_device(). Otherwise, netvsc_send_completion()
may reference freed memory which is overwritten, and cause panic.Reported-by: Long Li
Reported-by: Jason Wang
Signed-off-by: Haiyang Zhang
Signed-off-by: David S. Miller
26 Jul, 2012
2 commits
-
Reported-by: Jason Wang
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller -
It prevents ring_size being set to a too small value.
Reported-by: Jason Wang
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
17 Jul, 2012
1 commit
-
This adds support for setting synthetic NIC MAC address from within Linux
guests. Before using this feature, the option "spoofing of MAC address"
should be enabled at the Hyper-V manager / Settings of the synthetic
NIC.Thanks to Kin Cho for the initial implementation and
tests. And, thanks to Long Li for the debugging
works.Reported-and-tested-by: Kin Cho
Reported-by: Long Li
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
07 Jun, 2012
2 commits
-
Adding casts of objects to the same type is unnecessary
and confusing for a human reader.For example, this cast:
int y;
int *p = (int *)&y;I used the coccinelle script below to find and remove these
unnecessary casts. I manually removed the conversions this
script produces of casts with __force, __iomem and __user.@@
type T;
T *p;
@@- (T *)p
+ pSigned-off-by: Joe Perches
Signed-off-by: David S. Miller
05 Jun, 2012
1 commit
-
Change the busy-waiting/udelay to wait_event on outstanding sends.
Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
13 May, 2012
3 commits
-
Switch the hyperv filter and rndis gadget driver to use the same command
enumerators as the other drivers and delete the surplus command codes.Reviewed-by: Haiyang Zhang
Signed-off-by: Linus Walleij
Signed-off-by: David S. Miller -
The RNDIS status codes are redefined with much stranged ifdeffery
and only one of these codes was used in the hyperv driver, and
there it is very clearly referring to the RNDIS variant, not some
other status. So clarify this by explictly using the RNDIS_*
prefixed status code in the hyperv drivera and delete the
duplicate defines.Reviewed-by: Haiyang Zhang
Signed-off-by: Linus Walleij
Signed-off-by: David S. Miller -
As a first step to consolidate the RNDIS implementations, break out
a common file with all the #defines and move it to .This also deletes the immediate duplicated defines in the
file that yields a lot of compilation warnings.Reviewed-by: Haiyang Zhang
Signed-off-by: Linus Walleij
Signed-off-by: David S. Miller
24 Apr, 2012
1 commit
-
Fix merge between commit 3adadc08cc1e ("net ax25: Reorder ax25_exit to
remove races") and commit 0ca7a4c87d27 ("net ax25: Simplify and
cleanup the ax25 sysctl handling")The former moved around the sysctl register/unregister calls, the
later simply removed them.With help from Stephen Rothwell.
Signed-off-by: David S. Miller
22 Apr, 2012
1 commit
-
Although the network interface is down, the RX packets number which
could be observed by ifconfig may keep on increasing.This is because the WORK scheduled in netvsc_set_multicast_list()
may be executed after netvsc_close(). That means the rndis filter
may be re-enabled by do_set_multicast() even if it was closed by
netvsc_close().By canceling possible WORK before close the rndis filter, the issue
could be never happened.Signed-off-by: Wenqi Ma
Reviewed-by: Wei Yongjun
Signed-off-by: David S. Miller
04 Apr, 2012
1 commit
-
In the existing code, we only stop queue when the ringbuffer is full,
so the current packet has to be dropped or retried from upper layer.This patch stops the tx queue when available ringbuffer is below
the low watermark. So the ringbuffer still has small amount of space
available for the current packet. This will reduce the overhead of
retries on sending.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Signed-off-by: David S. Miller
20 Mar, 2012
1 commit
-
Instead of dropping the packet, we keep the skb buffer, and return
NETDEV_TX_BUSY to let upper layer retry send. This will not cause
endless loop, because the host is taking data away from ring buffer,
and we have called the stop_queue before returning NETDEV_TX_BUSY.The stop_queue was called in the function netvsc_send() in file
netvsc.c, then it returns to rndis_filter_send(), which returns to
netvsc_start_xmit() in file netvsc_drv.c. So the NETDEV_TX_BUSY is
indeed returned AFTER queue is stopped.Signed-off-by: Haiyang Zhang
Reviewed-by: K. Y. Srinivasan
Acked-by: Eric Dumazet
Signed-off-by: David S. Miller
19 Mar, 2012
1 commit
16 Mar, 2012
1 commit
-
A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY,
since caller is going to reuse freed skb.This is mostly a revert of commit bf769375c (staging: hv: fix the return
status of netvsc_start_xmit())In fact netif_tx_stop_queue() / netif_stop_queue() is needed before
returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop.In case of memory allocation error, only safe way is to drop the packet
and return NETDEV_TX_OKSigned-off-by: Eric Dumazet
Cc: "K. Y. Srinivasan"
Cc: Haiyang Zhang
Cc: Greg Kroah-Hartman
Reviewed-by: Haiyang Zhang
Signed-off-by: David S. Miller