<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/hyperv/netvsc, branch release/13.1.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F13.1.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F13.1.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2021-12-10T10:50:01Z</updated>
<entry>
<title>Hyper-V: hn: Enter network epoch when required</title>
<updated>2021-12-10T10:50:01Z</updated>
<author>
<name>Michael Tuexen</name>
<email>tuexen@FreeBSD.org</email>
</author>
<published>2021-08-26T17:27:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=42cb69e147e30000bd35c97d4212da4540b862dd'/>
<id>urn:sha1:42cb69e147e30000bd35c97d4212da4540b862dd</id>
<content type='text'>
PR:				254695
(cherry picked from commit 26d79d40a74fc804c76acd88a1f8f10f9827a2b3)
</content>
</entry>
<entry>
<title>if_hn: Fix a few typos in comments and a sysctl description</title>
<updated>2021-12-03T15:54:11Z</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2021-11-30T09:35:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f51048b535b3082ce1336c631e36a37b4b5a9735'/>
<id>urn:sha1:f51048b535b3082ce1336c631e36a37b4b5a9735</id>
<content type='text'>
- s/segement/segment/

(cherry picked from commit b15a632c418f6532fe7c3002b4085c61b1e278b0)
</content>
</entry>
<entry>
<title>netvsc: Fix a typo in a comment</title>
<updated>2021-10-06T06:19:58Z</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2021-10-02T08:42:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=badbe6a4a8171ee07c6c364849134f464e9c9276'/>
<id>urn:sha1:badbe6a4a8171ee07c6c364849134f464e9c9276</id>
<content type='text'>
- s/prefered/preferred/

(cherry picked from commit 9ebd651b58502f0572a7832d088f53f7a2ad00a5)
</content>
</entry>
<entry>
<title>Hyper-V: hn: Initialize the internal field of per packet info on tx path</title>
<updated>2021-03-29T10:21:30Z</updated>
<author>
<name>Wei Hu</name>
<email>whu@FreeBSD.org</email>
</author>
<published>2021-03-15T10:20:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2fbdbfaa0c4407547060f8a0ca4d0d04bbf09f9e'/>
<id>urn:sha1:2fbdbfaa0c4407547060f8a0ca4d0d04bbf09f9e</id>
<content type='text'>
The RSC support feature introduced a bit field "rm_internal" in
struct rndis_pktinfo with total size unchanged.

The guest does not use this field in the tx path. However we need to
initialize it to zero in case older hosts which are not aware of this
field.

Fixes:		a491581f ("Hyper-V: hn: Enable vSwitch RSC support")
MFC after:	2 weeks
Sponsored by:	Microsoft

(cherry picked from commit 805dbff6c36a6cd84491aa53a02315fa025734cc)
</content>
</entry>
<entry>
<title>Hyper-V: hn: Enable vSwitch RSC support in hn netvsc driver</title>
<updated>2021-03-29T10:20:03Z</updated>
<author>
<name>Wei Hu</name>
<email>whu@FreeBSD.org</email>
</author>
<published>2021-03-12T04:35:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cdc59163ff8e8f2a98ef8ca02773d1d2047e3aae'/>
<id>urn:sha1:cdc59163ff8e8f2a98ef8ca02773d1d2047e3aae</id>
<content type='text'>
Receive Segment Coalescing (RSC) in the vSwitch is a feature available in
Windows Server 2019 hosts and later. It reduces the per packet processing
overhead by coalescing multiple TCP segments when possible. This happens
mostly when TCP traffics are among different guests on same host.
This patch adds netvsc driver support for this feature.

The patch also updates NVS version to 6.1 as needed for RSC
enablement.

MFC after:	2 weeks
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D29075

(cherry picked from commit a491581f3f8df07cdff0236bd556895205929af4)
</content>
</entry>
<entry>
<title>Hyper-V: hn: Store host hash value in flowid</title>
<updated>2021-03-29T10:18:20Z</updated>
<author>
<name>Wei Hu</name>
<email>whu@FreeBSD.org</email>
</author>
<published>2021-02-24T05:07:46Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a86be0da9a03840bcf19499428e8868728c0082e'/>
<id>urn:sha1:a86be0da9a03840bcf19499428e8868728c0082e</id>
<content type='text'>
When rx packet contains hash value sent from host, store it in
the mbuf's flowid field so when the same mbuf is on the tx path,
the hash value can be used by the host to determine the outgoing
network queue.

MFC after:	2 weeks
Sponsored by:	Microsoft

(cherry picked from commit 80f39bd95f22322152709ea5fae3a3c546044c9c)
</content>
</entry>
<entry>
<title>Hyper-V: hn: Relinquish cpu in HN_LOCK to avoid deadlock</title>
<updated>2020-10-15T11:44:28Z</updated>
<author>
<name>Wei Hu</name>
<email>whu@FreeBSD.org</email>
</author>
<published>2020-10-15T11:44:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b3460f44524b145c6c8a760ebe65052560a810bf'/>
<id>urn:sha1:b3460f44524b145c6c8a760ebe65052560a810bf</id>
<content type='text'>
The try lock loop in HN_LOCK put the thread spinning on cpu if the lock
is not available. It is possible to cause deadlock if the thread holding
the lock is sleeping. Relinquish the cpu to work around this problem even
it doesn't completely solve the issue. The priority inversion could cause
the livelock no matter how less likely it could happen. A more complete
solution may be needed in the future.

Reported by:	Microsoft, Netapp
MFC after:	2 weeks
Sponsored by:	Microsoft
</content>
</entry>
<entry>
<title>Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)</title>
<updated>2020-02-26T14:26:36Z</updated>
<author>
<name>Pawel Biernacki</name>
<email>kaktus@FreeBSD.org</email>
</author>
<published>2020-02-26T14:26:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7029da5c36f2d3cf6bb6c81bf551229f416399e8'/>
<id>urn:sha1:7029da5c36f2d3cf6bb6c81bf551229f416399e8</id>
<content type='text'>
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are
still not MPSAFE (or already are but aren’t properly marked).
Use it in preparation for a general review of all nodes.

This is non-functional change that adds annotations to SYSCTL_NODE and
SYSCTL_PROC nodes using one of the soon-to-be-required flags.

Mark all obvious cases as MPSAFE.  All entries that haven't been marked
as MPSAFE before are by default marked as NEEDGIANT

Approved by:	kib (mentor, blanket)
Commented by:	kib, gallatin, melifaro
Differential Revision:	https://reviews.freebsd.org/D23718
</content>
</entry>
<entry>
<title>Although most of the NIC drivers are epoch ready, due to peer pressure</title>
<updated>2020-02-24T21:07:30Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2020-02-24T21:07:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e87c4940156c9a218cab4fd35f4d487dc57e7aa3'/>
<id>urn:sha1:e87c4940156c9a218cab4fd35f4d487dc57e7aa3</id>
<content type='text'>
switch over to opt-in instead of opt-out for epoch.

Instead of IFF_NEEDSEPOCH, provide IFF_KNOWSEPOCH. If driver marks
itself with IFF_KNOWSEPOCH, then ether_input() would not enter epoch
when processing its packets.

Now this will create recursive entrance in epoch in &gt;90% network
drivers, but will guarantee safeness of the transition.

Mark several tested drivers as IFF_KNOWSEPOCH.

Reviewed by:		hselasky, jeff, bz, gallatin
Differential Revision:	https://reviews.freebsd.org/D23674
</content>
</entry>
<entry>
<title>Introduce flag IFF_NEEDSEPOCH that marks Ethernet interfaces that</title>
<updated>2020-01-23T01:41:09Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2020-01-23T01:41:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0921628ddce1c29441ddb694e04e9c1e9fe356c8'/>
<id>urn:sha1:0921628ddce1c29441ddb694e04e9c1e9fe356c8</id>
<content type='text'>
supposedly may call into ether_input() without network epoch.

They all need to be reviewed before 13.0-RELEASE.  Some may need
be fixed.  The flag is not planned to be used in the kernel for
a long time.
</content>
</entry>
</feed>
