Re: [PATCH 5.10 066/135] net/ncsi: change from ndo_set_mac_address to dev_set_mac_address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 25, 2023 at 09:24:46AM +0300, Ivan Mikhaylov wrote:
> On Thu, 2023-08-24 at 19:08 +0200, Greg Kroah-Hartman wrote:
> > 5.10-stable review patch.  If anyone has any objections, please let
> > me know.
> > 
> > ------------------
> > 
> > From: Ivan Mikhaylov <fr0st61te@xxxxxxxxx>
> > 
> > [ Upstream commit 790071347a0a1a89e618eedcd51c687ea783aeb3 ]
> > 
> > Change ndo_set_mac_address to dev_set_mac_address because
> > dev_set_mac_address provides a way to notify network layer about MAC
> > change. In other case, services may not aware about MAC change and
> > keep
> > using old one which set from network adapter driver.
> > 
> > As example, DHCP client from systemd do not update MAC address
> > without
> > notification from net subsystem which leads to the problem with
> > acquiring
> > the right address from DHCP server.
> > 
> > Fixes: cb10c7c0dfd9e ("net/ncsi: Add NCSI Broadcom OEM command")
> > Cc: stable@xxxxxxxxxxxxxxx # v6.0+ 2f38e84 net/ncsi: make one oem_gma
> > function for all mfr id
> > Signed-off-by: Paul Fertser <fercerpav@xxxxxxxxx>
> > Signed-off-by: Ivan Mikhaylov <fr0st61te@xxxxxxxxx>
> > Reviewed-by: Simon Horman <simon.horman@xxxxxxxxxxxx>
> > Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
> > ---
> >  net/ncsi/ncsi-rsp.c | 5 +++--
> >  1 file changed, 3 insertions(+), 2 deletions(-)
> > 
> > diff --git a/net/ncsi/ncsi-rsp.c b/net/ncsi/ncsi-rsp.c
> > index 888ccc2d4e34b..47ffb790ff99f 100644
> > --- a/net/ncsi/ncsi-rsp.c
> > +++ b/net/ncsi/ncsi-rsp.c
> > @@ -616,7 +616,6 @@ static int ncsi_rsp_handler_oem_mlx_gma(struct
> > ncsi_request *nr)
> >  {
> >         struct ncsi_dev_priv *ndp = nr->ndp;
> >         struct net_device *ndev = ndp->ndev.dev;
> > -       const struct net_device_ops *ops = ndev->netdev_ops;
> >         struct ncsi_rsp_oem_pkt *rsp;
> >         struct sockaddr saddr;
> >         int ret = 0;
> > @@ -630,7 +629,9 @@ static int ncsi_rsp_handler_oem_mlx_gma(struct
> > ncsi_request *nr)
> >         /* Set the flag for GMA command which should only be called
> > once */
> >         ndp->gma_flag = 1;
> >  
> > -       ret = ops->ndo_set_mac_address(ndev, &saddr);
> > +       rtnl_lock();
> > +       ret = dev_set_mac_address(ndev, &saddr, NULL);
> > +       rtnl_unlock();
> >         if (ret < 0)
> >                 netdev_warn(ndev, "NCSI: 'Writing mac address to
> > device failed\n");
> >  
> 
> Greg, we had conversation in the past about this particular patchset
> series:
> https://www.spinics.net/lists/stable-commits/msg308587.html
> 
> Just one patch is not enough, I didn't test it either on linux kernel
> version < 6.0 , also I saw the Sasha's commits about the same for 5.4,
> 5.10, 5.15 and answered to him about necessity of two patchsets instead
> of one on 19 aug.

Ah, so I should also include commit 74b449b98dcc ("net/ncsi: make one
oem_gma function for all mfr id"), right?

thanks,

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux