<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net/hyperv/hyperv_net.h, branch v4.9</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.9</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.9'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-09-24T13:36:12Z</updated>
<entry>
<title>hv_netvsc: fix comments</title>
<updated>2016-09-24T13:36:12Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-09-24T00:08:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c6a77ff82fb849534748719f37f3f9086d78ed39'/>
<id>urn:sha1:c6a77ff82fb849534748719f37f3f9086d78ed39</id>
<content type='text'>
Typo's and spelling errors. Also remove old comment from staging era.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: count multicast packets received</title>
<updated>2016-09-23T12:39:49Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-09-22T23:56:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f7ad75b753f386454f50044fd69edad767b69ce8'/>
<id>urn:sha1:f7ad75b753f386454f50044fd69edad767b69ce8</id>
<content type='text'>
Useful for debugging issues with multicast and SR-IOV to keep track
of number of received multicast packets.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: remove VF in flight counters</title>
<updated>2016-09-23T12:39:49Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-09-22T23:56:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9cbcc4280645f0e7e19e6a0da443ec7e69cecf40'/>
<id>urn:sha1:9cbcc4280645f0e7e19e6a0da443ec7e69cecf40</id>
<content type='text'>
Since VF reference is now protected by RCU, no longer need the VF usage
counter and can use device flags to see whether to inject or not.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: use RCU to protect vf_netdev</title>
<updated>2016-09-23T12:39:49Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-09-22T23:56:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f207c10d982388fa42710922ad1c0c9d3ba9a87b'/>
<id>urn:sha1:f207c10d982388fa42710922ad1c0c9d3ba9a87b</id>
<content type='text'>
The vf_netdev pointer in the netvsc device context can simply be protected
by RCU because network device destruction is already RCU synchronized.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: add ethtool statistics for tx packet issues</title>
<updated>2016-08-23T19:05:38Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-08-23T19:17:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4323b47cf8edfe95bd58e20965667e71121c866e'/>
<id>urn:sha1:4323b47cf8edfe95bd58e20965667e71121c866e</id>
<content type='text'>
Printing console messages is not helpful when system is out of memory;
and can be disastrous with netconsole. Instead keep statistics
of these anomalous conditions.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: make device_remove void</title>
<updated>2016-08-23T19:05:37Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-08-23T19:17:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e08f3ea586d4145e36c77f0dd1602374b5d7e928'/>
<id>urn:sha1:e08f3ea586d4145e36c77f0dd1602374b5d7e928</id>
<content type='text'>
Always returns 0 and no callers check.

Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: make RSS hash key static</title>
<updated>2016-08-23T19:05:36Z</updated>
<author>
<name>Stephen Hemminger</name>
<email>sthemmin@microsoft.com</email>
</author>
<published>2016-08-23T19:17:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9477386687354f2aa8f4843170b7093c6dd1eb37'/>
<id>urn:sha1:9477386687354f2aa8f4843170b7093c6dd1eb37</id>
<content type='text'>
Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: Implement batching of receive completions</title>
<updated>2016-08-20T05:41:19Z</updated>
<author>
<name>Haiyang Zhang</name>
<email>haiyangz@microsoft.com</email>
</author>
<published>2016-08-19T21:47:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c0b558e5a393b77d2fe53335b5e07ca0e77178f8'/>
<id>urn:sha1:c0b558e5a393b77d2fe53335b5e07ca0e77178f8</id>
<content type='text'>
The existing code uses busy retry when unable to send out receive
completions due to full ring buffer. It also gives up retrying after limit
is reached, and causes receive buffer slots not being recycled.
This patch implements batching of receive completions. It also prevents
dropping receive completions due to full ring buffer.

Signed-off-by: Haiyang Zhang &lt;haiyangz@microsoft.com&gt;
Reviewed-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2016-08-18T05:17:32Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2016-08-18T05:17:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=60747ef4d173c2747bf7f0377fb22846cb422195'/>
<id>urn:sha1:60747ef4d173c2747bf7f0377fb22846cb422195</id>
<content type='text'>
Minor overlapping changes for both merge conflicts.

Resolution work done by Stephen Rothwell was used
as a reference.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>hv_netvsc: avoid deadlocks between rtnl lock and vf_use_cnt wait</title>
<updated>2016-08-15T20:48:07Z</updated>
<author>
<name>Vitaly Kuznetsov</name>
<email>vkuznets@redhat.com</email>
</author>
<published>2016-08-15T15:48:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d072218f214929194db06069564495b6b9fff34a'/>
<id>urn:sha1:d072218f214929194db06069564495b6b9fff34a</id>
<content type='text'>
Here is a deadlock scenario:
- netvsc_vf_up() schedules netvsc_notify_peers() work and quits.
- netvsc_vf_down() runs before netvsc_notify_peers() gets executed. As it
  is being executed from netdev notifier chain we hold rtnl lock when we
  get here.
- we enter while (atomic_read(&amp;net_device_ctx-&gt;vf_use_cnt) != 0) loop and
  wait till netvsc_notify_peers() drops vf_use_cnt.
- netvsc_notify_peers() starts on some other CPU but netdev_notify_peers()
  will hang on rtnl_lock().
- deadlock!

Instead of introducing additional synchronization I suggest we drop
gwrk.dwrk completely and call NETDEV_NOTIFY_PEERS directly. As we're
acting under rtnl lock this is legitimate.

Signed-off-by: Vitaly Kuznetsov &lt;vkuznets@redhat.com&gt;
Acked-by: Haiyang Zhang &lt;haiyangz@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
