* [PATCH] usb: gadget: u_ether: use eth_hw_addr_set()
@ 2021-10-19 17:21 Jakub Kicinski
2021-10-19 18:02 ` Maciej Żenczykowski
0 siblings, 1 reply; 2+ messages in thread
From: Jakub Kicinski @ 2021-10-19 17:21 UTC (permalink / raw)
To: balbi, gregkh; +Cc: Jakub Kicinski, lorenzo, manish.narani, maze, linux-usb
Commit 406f42fa0d3c ("net-next: When a bond have a massive amount
of VLANs...") introduced a rbtree for faster Ethernet address look
up. To maintain netdev->dev_addr in this tree we need to make all
the writes to it got through appropriate helpers.
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
CC: balbi@kernel.org
CC: gregkh@linuxfoundation.org
CC: lorenzo@google.com
CC: manish.narani@xilinx.com
CC: maze@google.com
CC: linux-usb@vger.kernel.org
---
drivers/usb/gadget/function/u_ether.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c
index 85a3f6d4b5af..e0ad5aed6ac9 100644
--- a/drivers/usb/gadget/function/u_ether.c
+++ b/drivers/usb/gadget/function/u_ether.c
@@ -754,6 +754,7 @@ struct eth_dev *gether_setup_name(struct usb_gadget *g,
struct eth_dev *dev;
struct net_device *net;
int status;
+ u8 addr[ETH_ALEN];
net = alloc_etherdev(sizeof *dev);
if (!net)
@@ -773,9 +774,10 @@ struct eth_dev *gether_setup_name(struct usb_gadget *g,
dev->qmult = qmult;
snprintf(net->name, sizeof(net->name), "%s%%d", netname);
- if (get_ether_addr(dev_addr, net->dev_addr))
+ if (get_ether_addr(dev_addr, addr))
dev_warn(&g->dev,
"using random %s ethernet address\n", "self");
+ eth_hw_addr_set(net, addr);
if (get_ether_addr(host_addr, dev->host_mac))
dev_warn(&g->dev,
"using random %s ethernet address\n", "host");
--
2.31.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] usb: gadget: u_ether: use eth_hw_addr_set()
2021-10-19 17:21 [PATCH] usb: gadget: u_ether: use eth_hw_addr_set() Jakub Kicinski
@ 2021-10-19 18:02 ` Maciej Żenczykowski
0 siblings, 0 replies; 2+ messages in thread
From: Maciej Żenczykowski @ 2021-10-19 18:02 UTC (permalink / raw)
To: Jakub Kicinski
Cc: balbi, Greg Kroah-Hartman, Lorenzo Colitti, manish.narani, linux-usb
On Tue, Oct 19, 2021 at 10:21 AM Jakub Kicinski <kuba@kernel.org> wrote:
>
> Commit 406f42fa0d3c ("net-next: When a bond have a massive amount
> of VLANs...") introduced a rbtree for faster Ethernet address look
> up. To maintain netdev->dev_addr in this tree we need to make all
> the writes to it got through appropriate helpers.
>
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> ---
> CC: balbi@kernel.org
> CC: gregkh@linuxfoundation.org
> CC: lorenzo@google.com
> CC: manish.narani@xilinx.com
> CC: maze@google.com
> CC: linux-usb@vger.kernel.org
> ---
> drivers/usb/gadget/function/u_ether.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c
> index 85a3f6d4b5af..e0ad5aed6ac9 100644
> --- a/drivers/usb/gadget/function/u_ether.c
> +++ b/drivers/usb/gadget/function/u_ether.c
> @@ -754,6 +754,7 @@ struct eth_dev *gether_setup_name(struct usb_gadget *g,
> struct eth_dev *dev;
> struct net_device *net;
> int status;
> + u8 addr[ETH_ALEN];
>
> net = alloc_etherdev(sizeof *dev);
> if (!net)
> @@ -773,9 +774,10 @@ struct eth_dev *gether_setup_name(struct usb_gadget *g,
> dev->qmult = qmult;
> snprintf(net->name, sizeof(net->name), "%s%%d", netname);
>
> - if (get_ether_addr(dev_addr, net->dev_addr))
> + if (get_ether_addr(dev_addr, addr))
> dev_warn(&g->dev,
> "using random %s ethernet address\n", "self");
> + eth_hw_addr_set(net, addr);
> if (get_ether_addr(host_addr, dev->host_mac))
> dev_warn(&g->dev,
> "using random %s ethernet address\n", "host");
> --
> 2.31.1
>
Reviewed-by: Maciej Żenczykowski <maze@google.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-10-19 18:02 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-19 17:21 [PATCH] usb: gadget: u_ether: use eth_hw_addr_set() Jakub Kicinski
2021-10-19 18:02 ` Maciej Żenczykowski
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.