Messages in this thread |  | | Date | Mon, 15 Nov 2021 20:27:35 +0200 | From | Leon Romanovsky <> | Subject | Re: [PATCH net] devlink: Remove extra assertion from flash notification logic |
| |
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@nvidia.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.
Thanks
> > > diff --git a/net/core/devlink.c b/net/core/devlink.c > > index 5ba4f9434acd..6face738b16a 100644 > > --- a/net/core/devlink.c > > +++ b/net/core/devlink.c > > @@ -4229,7 +4229,6 @@ static void __devlink_flash_update_notify(struct devlink *devlink, > > WARN_ON(cmd != DEVLINK_CMD_FLASH_UPDATE && > > cmd != DEVLINK_CMD_FLASH_UPDATE_END && > > cmd != DEVLINK_CMD_FLASH_UPDATE_STATUS); > > - WARN_ON(!xa_get_mark(&devlinks, devlink->index, DEVLINK_REGISTERED)); > > > > msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL); > > if (!msg) >
|  |