[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YZUCRk8nz1rnnRRL@unreal>
Date: Wed, 17 Nov 2021 15:23:18 +0200
From: Leon Romanovsky <leon@...nel.org>
To: Jakub Kicinski <kuba@...nel.org>
Cc: "David S . Miller" <davem@...emloft.net>,
Amit Cohen <amcohen@...dia.com>, Jiri Pirko <jiri@...dia.com>,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH net] devlink: Remove extra assertion from flash
notification logic
On Mon, Nov 15, 2021 at 05:15:30PM -0800, Jakub Kicinski wrote:
> On Mon, 15 Nov 2021 20:27:35 +0200 Leon Romanovsky wrote:
> > On Mon, Nov 15, 2021 at 10:14:37AM -0800, Jakub Kicinski wrote:
> > > On Mon, 15 Nov 2021 20:07:47 +0200 Leon Romanovsky wrote:
> > > > From: Leon Romanovsky <leonro@...dia.com>
> > > >
> > > > The mlxsw driver calls to various devlink flash routines even before
> > > > users can get any access to the devlink instance itself. For example,
> > > > mlxsw_core_fw_rev_validate() one of such functions.
> > > >
> > > > It causes to the WARN_ON to trigger warning about devlink not
> > > > registered, while the flow is valid.
> > >
> > > So the fix is to remove the warning and keep generating notifications
> > > about objects which to the best understanding of the user space do not
> > > exist?
> >
> > If we delay this mlxsw specific notification, the user will get
> > DEVLINK_CMD_FLASH_UPDATE and DEVLINK_CMD_FLASH_UPDATE_END at the
> > same time. I didn't like this, probably users won't like it either,
> > so decided to go with less invasive solution as possible.
>
> I'd drop these notifications, the user didn't ask to flash the device,
> it's just code reuse in the driver, right?
Sorry, I missed your reply.
I'm not sure about code reuse, from the code, it looks like attempt to
burn FW during mlxsw register.
__mlxsw_core_bus_device_register
-> mlxsw_core_fw_rev_validate
-> mlxsw_core_fw_flash
-> mlxfw_firmware_flash
-> mlxfw_status_notify
-> devlink_flash_update_status_notify
-> __devlink_flash_update_notify
-> WARN_ON(...)
The mlxfw_firmware_flash() routine is called by mlx5 too, so I can't
remove mlxfw_status_notify() calls without too much changes.
Easiest solution was to remove WARN_ON(), because no one really
interested in these events anyway. I searched in github and didn't
find any user who listened to them.
Thanks
Powered by blists - more mailing lists