Re: [PATCH] usb: gadget: u_ether: Don't warn in gether_setup_name_default()

From: Andrzej Pietrasiewicz
Date: Tue Jan 10 2023 - 11:32:19 EST


Hi,

Hasn't there been a similar patch already?

W dniu 6.01.2023 o 17:17, Jon Hunter pisze:
The function gether_setup_name_default() is called by various USB
ethernet gadget drivers. This function always generates the MAC address
for the ethernet gadget device and always prints a warning when
generating the MAC address. Given that these messages are expected, make
these prints informational instead of warnings.

Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
---
drivers/usb/gadget/function/u_ether.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c
index 8f12f3f8f6ee..c19d66cd1446 100644
--- a/drivers/usb/gadget/function/u_ether.c
+++ b/drivers/usb/gadget/function/u_ether.c
@@ -845,13 +845,13 @@ struct net_device *gether_setup_name_default(const char *netname)
snprintf(net->name, sizeof(net->name), "%s%%d", netname);
eth_random_addr(dev->dev_mac);
- pr_warn("using random %s ethernet address\n", "self");
+ pr_info("using random %s ethernet address\n", "self");

As far as I can tell this function is called by all Ethernet gadgets,
and using random Ethernet addresses is the default behavior for all of them,
including legacy gadgets. Why to inform about the default situation happening?
So in fact maybe it would be better to eliminate the pr_warn() altogether,
instead of replacing it with pr_info()? If the user does not care to
explicitly set some non-default address(es), why would she care to know
that a randomly selected address has been chosen? Note that learning
_what_ specific address has been chosen is perfectly doable without
these pr_info() calls.

Regards,

Andrzej

/* by default we always have a random MAC address */
net->addr_assign_type = NET_ADDR_RANDOM;
eth_random_addr(dev->host_mac);
- pr_warn("using random %s ethernet address\n", "host");
+ pr_info("using random %s ethernet address\n", "host");
net->netdev_ops = &eth_netdev_ops;