<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-linux/drivers, branch davem/net</title>
<subtitle>WireGuard for the Linux kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-linux/atom/drivers?h=davem%2Fnet</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-linux/atom/drivers?h=davem%2Fnet'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/'/>
<updated>2026-10-06T01:19:42Z</updated>
<entry>
<title>Revert "net: stmmac: propagate PTP addend and system time programming errors"</title>
<updated>2026-10-06T01:19:42Z</updated>
<author>
<name>Jakub Kicinski</name>
<email>kuba@kernel.org</email>
</author>
<published>2026-10-06T01:19:20Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=d5a007b9b457c915ab1a53227e8939e4018aa97a'/>
<id>urn:sha1:d5a007b9b457c915ab1a53227e8939e4018aa97a</id>
<content type='text'>
This reverts commit 232d49dd4b40a666283de9e722899f088ed581b2.

Anirudh reports a regression from this change.

It is not appropriate for net this late in the release cycle
in the first place, so let's revert and revisit in net-next.

Reported-by: Anirudh Srinivasan &lt;asrinivasan@oss.tenstorrent.com&gt;
Link: https://lore.kernel.org/CAEev2e8+fr1tJnSErD+2TtLDw5fGJbQOMcM5eefMnLyFUR+m7w@mail.gmail.com
Fixes: 232d49dd4b40 ("net: stmmac: propagate PTP addend and system time programming errors")
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: airoha: Add retry mechanism to airoha_qdma_set_trtcm_param()</title>
<updated>2026-10-06T00:45:01Z</updated>
<author>
<name>Leto Liu (刘涛)</name>
<email>Leto.Liu@airoha.com</email>
</author>
<published>2026-09-30T06:58:48Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=7e170da2edec9fb0717543571cc14b0aabee2b46'/>
<id>urn:sha1:7e170da2edec9fb0717543571cc14b0aabee2b46</id>
<content type='text'>
CPU accesses QDMA via the bus. When multiple modules are using the bus
simultaneously, CPU access to QDMA may encounter bus timeouts and fails,
resulting in QDMA configuration failures and potentially causing packet
transmission issues. In order to mitigate the issue, introduce a retry
mechanism to airoha_qdma_set_trtcm_param routine in order to ensure the
configuration is correctly applied to the hardware.

It's enough to try a second time for the TRTCM config to be actually
applied to make sure we are not in the middle of bucket handling as it does
operate on fixed time slot internally.

Fixes: ef1ca9271313b ("net: airoha: Add sched HTB offload support")
Signed-off-by: Leto Liu (刘涛) &lt;Leto.Liu@airoha.com&gt;
[ improve commit description, drop memory block, apply better loop logic]
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
Link: https://patch.msgid.link/20260930065855.46171-1-ansuelsmth@gmail.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>gve: fix napi_disable deadlock when attempting to disable XSK pools</title>
<updated>2026-10-05T23:59:56Z</updated>
<author>
<name>Joshua Washington</name>
<email>joshwash@google.com</email>
</author>
<published>2026-09-30T21:47:35Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=0cb6939a4dfefa822007b7a71986e06bc4f61f54'/>
<id>urn:sha1:0cb6939a4dfefa822007b7a71986e06bc4f61f54</id>
<content type='text'>
When disabling XSK pools, GVE calls the unlocked versions of
napi_disable and napi_enable. However, the netdev lock has already been
acquired before ndo_bpf is called because GVE supports queue management
ops. Calling the unlocked versions of napi_disable/enable results in a
deadlock when attempting to disable XSK pools, as the thread attempts to
re-acquire a lock it already holds.

Update the NAPI calls to use the locked versions.

This issue was found in production.

Fixes: 606048cbd834 ("net: designate XSK pool pointers in queues as "ops protected"")
Cc: stable@vger.kernel.org
Reviewed-by: Harshitha Ramamurthy &lt;hramamurthy@google.com&gt;
Reviewed-by: Jordan Rhee &lt;jordanrhee@google.com&gt;
Signed-off-by: Joshua Washington &lt;joshwash@google.com&gt;
Link: https://patch.msgid.link/20260930214735.3288780-4-joshwash@google.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>gve: fix XSK buffer leak on error descriptor</title>
<updated>2026-10-05T23:59:36Z</updated>
<author>
<name>Joshua Washington</name>
<email>joshwash@google.com</email>
</author>
<published>2026-09-30T21:47:34Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=9fed6a8ab8a5bacba2c709cb19d2dd6d2fa9112e'/>
<id>urn:sha1:9fed6a8ab8a5bacba2c709cb19d2dd6d2fa9112e</id>
<content type='text'>
When the error bit is set in the RX completion descriptor, the buf_state
and its attached buffer should be freed. In the case of AF_XDP ZC, the
XSK buffer was not freed, leading to a leak.

This issue was caught by LLM.

Fixes: c1fffc5d66a7 ("gve: implement DQO RX datapath and control path for AF_XDP zero-copy")
Cc: stable@vger.kernel.org
Reviewed-by: Jordan Rhee &lt;jordanrhee@google.com&gt;
Reviewed-by: Tim Hostetler &lt;thostet@google.com&gt;
Signed-off-by: Joshua Washington &lt;joshwash@google.com&gt;
Link: https://patch.msgid.link/20260930214735.3288780-3-joshwash@google.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>gve: fix XSK buffer leak when rings are stopped</title>
<updated>2026-10-05T23:59:18Z</updated>
<author>
<name>Joshua Washington</name>
<email>joshwash@google.com</email>
</author>
<published>2026-09-30T21:47:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=73670ddb91a4d22e1deb3efd962242de1ec48e90'/>
<id>urn:sha1:73670ddb91a4d22e1deb3efd962242de1ec48e90</id>
<content type='text'>
GVE does not free XSK buffers when resetting ring state as a part of
stopping queues. This causes all XSK buffers which are posted to the
NIC to be leaked.

Free XSK buffers attached to an allocated buf_state when stopping rings.

This issue was hit in production.

Fixes: c1fffc5d66a7 ("gve: implement DQO RX datapath and control path for AF_XDP zero-copy")
Cc: stable@vger.kernel.org
Reviewed-by: Tim Hostetler &lt;thostet@google.com&gt;
Reviewed-by: Jordan Rhee &lt;jordanrhee@google.com&gt;
Signed-off-by: Joshua Washington &lt;joshwash@google.com&gt;
Link: https://patch.msgid.link/20260930214735.3288780-2-joshwash@google.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: stmmac: Disable S-Tag processing on dwmac4</title>
<updated>2026-10-05T23:36:45Z</updated>
<author>
<name>Ovidiu Panait</name>
<email>ovidiu.panait.rb@renesas.com</email>
</author>
<published>2026-09-28T20:34:41Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=da17990421d79f1bfb4142f9d767fd33daecc3d8'/>
<id>urn:sha1:da17990421d79f1bfb4142f9d767fd33daecc3d8</id>
<content type='text'>
Currently, hardware VLAN stripping is broken for 802.1ad tags. vlan_rx_hw()
hardcodes ETH_P_8021Q when putting the hardware tag into the skb, rather
than using the actual protocol from the packet. Because of this, packets
that contain a 802.1ad outer tag are incorrectly passed up the stack as
having an 802.1Q tag. This causes QinQ ping between two hosts to fail.

vlan_rx_hw() is shared by dwxgmac2 and dwmac4: on dwxgmac2 the tag type
is available in the RDES3 write-back descriptor (the ET_LT field), so the
outer tag type can be determined based on that info. However, dwmac4
doesn't seem to provide the tag type. The Length/Type field in RDES3 only
indicates whether the packet is single or double-tagged, not which tag
type was stripped.

Since dwmac4 cannot report the stripped tag type, it cannot support
hardware S-Tag stripping correctly. Therefore, restrict the
NETIF_F_HW_VLAN_STAG_RX and NETIF_F_HW_VLAN_STAG_FILTER advertisement
to dwxgmac2 only.

With this, 802.1ad tags are left in place and handled by the software
VLAN path.

Fixes: 750011e239a5 ("net: stmmac: Add support for HW-accelerated VLAN stripping")
Signed-off-by: Ovidiu Panait &lt;ovidiu.panait.rb@renesas.com&gt;
Reviewed-by: Maxime Chevallier &lt;maxime.chevallier@bootlin.com&gt;
Link: https://patch.msgid.link/20260928203441.34876-6-ovidiu.panait.rb@renesas.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: stmmac: Do not advertise S-VLAN stripping when it is disabled</title>
<updated>2026-10-05T23:36:45Z</updated>
<author>
<name>Ovidiu Panait</name>
<email>ovidiu.panait.rb@renesas.com</email>
</author>
<published>2026-09-28T20:34:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=c63ce7b9c7e7b68267899e4a0fc14b35d2c1dfcc'/>
<id>urn:sha1:c63ce7b9c7e7b68267899e4a0fc14b35d2c1dfcc</id>
<content type='text'>
C-VLAN and S-VLAN tag stripping are both controlled by the EVLS bit,
so disabling rx-vlan-offload also disables S-VLAN tag stripping.
However, rx-vlan-stag-hw-parse keeps being advertised as enabled:

root@rzv2h-evk:~# ethtool -K end1 rx-vlan-offload off
root@rzv2h-evk:~# ethtool -k end1 | grep -i vlan
rx-vlan-offload: off
tx-vlan-offload: off [fixed]
rx-vlan-filter: on [fixed]
vlan-challenged: off [fixed]
tx-vlan-stag-hw-insert: off [fixed]
rx-vlan-stag-hw-parse: on [fixed]
rx-vlan-stag-filter: on [fixed]

Fix this inconsistency by making NETIF_F_HW_VLAN_STAG_RX follow
NETIF_F_HW_VLAN_CTAG_RX.

Fixes: 750011e239a5 ("net: stmmac: Add support for HW-accelerated VLAN stripping")
Signed-off-by: Ovidiu Panait &lt;ovidiu.panait.rb@renesas.com&gt;
Reviewed-by: Maxime Chevallier &lt;maxime.chevallier@bootlin.com&gt;
Link: https://patch.msgid.link/20260928203441.34876-5-ovidiu.panait.rb@renesas.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: stmmac: Rename double VLAN references to svlan</title>
<updated>2026-10-05T23:36:45Z</updated>
<author>
<name>Ovidiu Panait</name>
<email>ovidiu.panait.rb@renesas.com</email>
</author>
<published>2026-09-28T20:34:39Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=354b07bc1dcaa94b40a5904159c1a53b33d7cf59'/>
<id>urn:sha1:354b07bc1dcaa94b40a5904159c1a53b33d7cf59</id>
<content type='text'>
The ESVL and DOVLTC bits control S-VLAN tag processing and have
nothing to do with the double VLAN feature, which only provides a way
to process an additional inner VLAN tag. However, the driver code
that handles them always refers to "double VLAN", which is unrelated
and makes the implementation confusing. The driver does not use any
of the inner VLAN tag features, and the networking core does not
support offloads for the inner tag anyway.

To reduce the confusion regarding S-Tag vs double VLAN handling,
rename double -&gt; svlan.

No functional change intended.

Suggested-by: Joseph Steel &lt;recv.jo@gmail.com&gt;
Signed-off-by: Ovidiu Panait &lt;ovidiu.panait.rb@renesas.com&gt;
Reviewed-by: Maxime Chevallier &lt;maxime.chevallier@bootlin.com&gt;
Link: https://patch.msgid.link/20260928203441.34876-4-ovidiu.panait.rb@renesas.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: stmmac: Stop toggling the EDVLP bit</title>
<updated>2026-10-05T23:36:45Z</updated>
<author>
<name>Ovidiu Panait</name>
<email>ovidiu.panait.rb@renesas.com</email>
</author>
<published>2026-09-28T20:34:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=69aa9e76677c97ba992df03a3c74d839470e7363'/>
<id>urn:sha1:69aa9e76677c97ba992df03a3c74d839470e7363</id>
<content type='text'>
Currently, the double VLAN EDVLP bit is toggled whenever an 802.1ad VLAN
is registered. This bit enables processing of the inner VLAN tag, which
is completely unrelated to S-Tag VLAN handling.

Move EDVLP handling into vlan_set_hw_mode() instead, and keep it always
enabled, so that COE can work for packets with an inner VLAN header.
Add a dedicated callback for dwxlgmac2, as it doesn't implement the
set_hw_vlan_mode callback, like the other cores.

Suggested-by: Joseph Steel &lt;recv.jo@gmail.com&gt;
Signed-off-by: Ovidiu Panait &lt;ovidiu.panait.rb@renesas.com&gt;
Link: https://patch.msgid.link/20260928203441.34876-3-ovidiu.panait.rb@renesas.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: stmmac: Remove VLAN perfect matching dead code</title>
<updated>2026-10-05T23:36:41Z</updated>
<author>
<name>Ovidiu Panait</name>
<email>ovidiu.panait.rb@renesas.com</email>
</author>
<published>2026-09-28T20:34:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=11705541e7d421706a54f7f6ead8a3316c91c2bc'/>
<id>urn:sha1:11705541e7d421706a54f7f6ead8a3316c91c2bc</id>
<content type='text'>
stmmac_vlan_update() falls back to "perfect matching" when the VLAN hash
filter is unavailable (!priv-&gt;dma_cap.vlhash). This fallback has been
unreachable in normal operation since its introduction in
commit c7ab0b8088d7 ("net: stmmac: Fallback to VLAN Perfect filtering if
HASH is not available") because the NETIF_F_HW_VLAN_{CTAG,STAG}_FILTER
features are advertised only when priv-&gt;dma_cap.vlhash is true.

The fallback is also duplicating the code in vlan_add_hw_rx_fltr(), which
is always available since stmmac_get_num_vlan() returns at least 1.

Therefore, remove it.

Signed-off-by: Ovidiu Panait &lt;ovidiu.panait.rb@renesas.com&gt;
Reviewed-by: Maxime Chevallier &lt;maxime.chevallier@bootlin.com&gt;
Link: https://patch.msgid.link/20260928203441.34876-2-ovidiu.panait.rb@renesas.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
</feed>
