Message ID | 20230116155545.101391-1-jonathanh@nvidia.com |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | [V2,1/2] usb: gadget: u_ether: Improve print in gether_setup_name_default() | expand |
W dniu 16.01.2023 o 16:55, Jon Hunter pisze: > The print in in gether_setup_name_default() does not provide any useful > information because a random MAC address will always be generated when > calling this function. Rather than removing the print, update the print > to show MAC address that is generated which is similar to other ethernet > drivers. I'd say the above part is redundant. It is supposed to be a message understood by future readers of the commit log, who will not necessarily know that we were considering a complete removal of these messages. > > Finally, given that the strings 'self' and 'host' are static we do not > need to pass these strings as an arguments. Just drop the "Finally, ", the indefinite article "an" before the plural noun "arguments" and the above sentence will accurately describe what the patch is about. With that Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com> > > Signed-off-by: Jon Hunter <jonathanh@nvidia.com> > --- > V1 -> V2: Added this patch > > 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..be8e7b448933 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_warn("using random self ethernet address %pM\n", dev->dev_mac); > > /* 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_warn("using random host ethernet address %pM\n", dev->host_mac); > > net->netdev_ops = ð_netdev_ops; >
On Mon, Jan 16, 2023 at 03:55:44PM +0000, Jon Hunter wrote: > The print in in gether_setup_name_default() does not provide any useful > information because a random MAC address will always be generated when > calling this function. Rather than removing the print, update the print > to show MAC address that is generated which is similar to other ethernet > drivers. > > Finally, given that the strings 'self' and 'host' are static we do not > need to pass these strings as an arguments. > > Signed-off-by: Jon Hunter <jonathanh@nvidia.com> > --- > V1 -> V2: Added this patch > > 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..be8e7b448933 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_warn("using random self ethernet address %pM\n", dev->dev_mac); If you are going to fix these up, please use dev_warn() and friends, don't use "raw" pr_* calls in a driver. thanks, greg k-h
On 17/01/2023 15:04, Greg Kroah-Hartman wrote: > On Mon, Jan 16, 2023 at 03:55:44PM +0000, Jon Hunter wrote: >> The print in in gether_setup_name_default() does not provide any useful >> information because a random MAC address will always be generated when >> calling this function. Rather than removing the print, update the print >> to show MAC address that is generated which is similar to other ethernet >> drivers. >> >> Finally, given that the strings 'self' and 'host' are static we do not >> need to pass these strings as an arguments. >> >> Signed-off-by: Jon Hunter <jonathanh@nvidia.com> >> --- >> V1 -> V2: Added this patch >> >> 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..be8e7b448933 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_warn("using random self ethernet address %pM\n", dev->dev_mac); > > If you are going to fix these up, please use dev_warn() and friends, > don't use "raw" pr_* calls in a driver. I had a look at that, but I don't think we can in this case. The 'dev' structure you see above is of type 'struct eth_dev' and not 'struct device'. In other places in the driver where dev_warn is used the device structure comes from the 'struct usb_gadget' but FWICT this is not initialised in the above function. Jon
On Thu, Jan 19, 2023 at 10:14:59AM +0000, Jon Hunter wrote: > > On 17/01/2023 15:04, Greg Kroah-Hartman wrote: > > On Mon, Jan 16, 2023 at 03:55:44PM +0000, Jon Hunter wrote: > > > The print in in gether_setup_name_default() does not provide any useful > > > information because a random MAC address will always be generated when > > > calling this function. Rather than removing the print, update the print > > > to show MAC address that is generated which is similar to other ethernet > > > drivers. > > > > > > Finally, given that the strings 'self' and 'host' are static we do not > > > need to pass these strings as an arguments. > > > > > > Signed-off-by: Jon Hunter <jonathanh@nvidia.com> > > > --- > > > V1 -> V2: Added this patch > > > > > > 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..be8e7b448933 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_warn("using random self ethernet address %pM\n", dev->dev_mac); > > > > If you are going to fix these up, please use dev_warn() and friends, > > don't use "raw" pr_* calls in a driver. > > > I had a look at that, but I don't think we can in this case. The 'dev' > structure you see above is of type 'struct eth_dev' and not 'struct device'. Then use the networking macro for this. And underneath it all is a real struct device anyway, so it should be possible. > In other places in the driver where dev_warn is used the device structure > comes from the 'struct usb_gadget' but FWICT this is not initialised in the > above function. There's a structure somewhere in here, NEVER use raw pr_* calls in a driver, especially for a message like this. It needs to point to the correct device that is making the message, otherwise it's impossible to know what is going on (and is why we created those macros decades ago...) thanks, greg k-h
diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c index 8f12f3f8f6ee..be8e7b448933 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_warn("using random self ethernet address %pM\n", dev->dev_mac); /* 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_warn("using random host ethernet address %pM\n", dev->host_mac); net->netdev_ops = ð_netdev_ops;
The print in in gether_setup_name_default() does not provide any useful information because a random MAC address will always be generated when calling this function. Rather than removing the print, update the print to show MAC address that is generated which is similar to other ethernet drivers. Finally, given that the strings 'self' and 'host' are static we do not need to pass these strings as an arguments. Signed-off-by: Jon Hunter <jonathanh@nvidia.com> --- V1 -> V2: Added this patch drivers/usb/gadget/function/u_ether.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)