devlink: Don't throw an error if flash notification sent before devlink visible
authorLeon Romanovsky <leonro@nvidia.com>
Wed, 17 Nov 2021 14:49:09 +0000 (16:49 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 18 Nov 2021 11:34:17 +0000 (11:34 +0000)
commitfec1faf221f61118aa52f44c65a13c3e173a64c2
treebac3b1ae7e385ead0533ebd36e1e87d810f77aff
parentf915b75bffb7257bd8d26376b8e1cc67771927f8
devlink: Don't throw an error if flash notification sent before devlink visible

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.

__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(...)

It causes to the WARN_ON to trigger warning about devlink not registered.

Fixes: cf530217408e ("devlink: Notify users when objects are accessible")
Reported-by: Danielle Ratson <danieller@nvidia.com>
Tested-by: Danielle Ratson <danieller@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/devlink.c