Re: AW: AW: [PATCH net] net: usb: lan78xx: restore VLAN filter table after device reset

From: Nicolai Buchwitz

Date: Fri Jun 19 2026 - 05:54:44 EST


Hi Sven

On 19.6.2026 11:18, Sven Schuchmann wrote:
Hello Nicolai,

my first opservation is that calling lan78xx_write_vlan_table()
at the end lan78xx_start_rx_path() fixes the problem. I was able
to do over 200 connect/disconnects without any problem.

Thanks, that's the right direction. For the final patch I'd move it
to lan78xx_mac_link_up(), which is IMHO a bit "cleaner":

[...]
static void lan78xx_rx_urb_submit_all(struct lan78xx_net *dev);
+static int lan78xx_write_vlan_table(struct lan78xx_net *dev);
[...]
static void lan78xx_mac_link_up(struct phylink_config *config,
[...]
if (ret < 0)
goto link_up_fail;

+ ret = lan78xx_write_vlan_table(dev);
+ if (ret < 0)
+ goto link_up_fail;
+
netif_start_queue(net);
[...]

Could you give this version a quick test and confirm? Then I'll add
your Tested-by.

[...]

Thanks
Nicolai