OK. I wished there was a DPDK function to verify if transceiver is plugged in or not, without log errors. Such as rte_eth_dev_is_module_exist() So, 1'st I would have checked if it's plugged in. Then I would have used rte_eth_dev_get_module_info(). The workaround is setting the module's log level so the error won't be seen before calling rte_eth_dev_get_module_info(), and set it back to default afterwards. Thanks, Yogev ________________________________ From: Dariusz Sosnowski Sent: Thursday, June 26, 2025 14:36 To: Yogev Chaimovich Cc: Maayan Kashani ; Stephen Hemminger ; Slava Ovsiienko ; Bing Zhao ; Ori Kam ; Suanming Mou ; Matan Azrad ; dev@dpdk.org Subject: Re: [PATCH] net/mlx5: fix transceiver warning when not exist Hi Yogev, On Mon, Jun 09, 2025 at 01:11:27PM +0000, Yogev Chaimovich wrote: > Hi, > Actually looks like we're going with another workaround, so I might not be needing my original patch. Could you tell us what kind of workaround you applied? Also, I'm not sure if this warning should be suppressed on EIO. mlx5 PMD relies on the kernel driver to get the module info, and from what I've seen for ETHTOOL_GMODULEINFO kernel can return EIO also for cases other than transceiver not existing (for example error on NIC register access). So mlx5 PMD cannot discern between "no transceiver" and "other I/O error". For this reason I would keep the log and keep it at warn level. > Also, I do not understand how my patch (not printing a log) makes a test fail - I couldn't find that test in DPDK to verify. I'm not that familiar though.. > > Yogev *snip* Best regards, Dariusz Sosnowski