return ERR_PTR(err);
 }
 
-static void mlx5_eswitch_event_handlers_register(struct mlx5_eswitch *esw)
+static void mlx5_eswitch_event_handler_register(struct mlx5_eswitch *esw)
 {
-       MLX5_NB_INIT(&esw->nb, eswitch_vport_event, NIC_VPORT_CHANGE);
-       mlx5_eq_notifier_register(esw->dev, &esw->nb);
-
        if (esw->mode == MLX5_ESWITCH_OFFLOADS && mlx5_eswitch_is_funcs_handler(esw->dev)) {
                MLX5_NB_INIT(&esw->esw_funcs.nb, mlx5_esw_funcs_changed_handler,
                             ESW_FUNCTIONS_CHANGED);
        }
 }
 
-static void mlx5_eswitch_event_handlers_unregister(struct mlx5_eswitch *esw)
+static void mlx5_eswitch_event_handler_unregister(struct mlx5_eswitch *esw)
 {
        if (esw->mode == MLX5_ESWITCH_OFFLOADS && mlx5_eswitch_is_funcs_handler(esw->dev))
                mlx5_eq_notifier_unregister(esw->dev, &esw->esw_funcs.nb);
 
-       mlx5_eq_notifier_unregister(esw->dev, &esw->nb);
-
        flush_workqueue(esw->work_queue);
 }
 
 
        mlx5_eswitch_update_num_of_vfs(esw, num_vfs);
 
+       MLX5_NB_INIT(&esw->nb, eswitch_vport_event, NIC_VPORT_CHANGE);
+       mlx5_eq_notifier_register(esw->dev, &esw->nb);
+
        if (esw->mode == MLX5_ESWITCH_LEGACY) {
                err = esw_legacy_enable(esw);
        } else {
 
        esw->fdb_table.flags |= MLX5_ESW_FDB_CREATED;
 
-       mlx5_eswitch_event_handlers_register(esw);
+       mlx5_eswitch_event_handler_register(esw);
 
        esw_info(esw->dev, "Enable: mode(%s), nvfs(%d), necvfs(%d), active vports(%d)\n",
                 esw->mode == MLX5_ESWITCH_LEGACY ? "LEGACY" : "OFFLOADS",
         */
        mlx5_esw_mode_change_notify(esw, MLX5_ESWITCH_LEGACY);
 
-       mlx5_eswitch_event_handlers_unregister(esw);
+       mlx5_eq_notifier_unregister(esw->dev, &esw->nb);
+       mlx5_eswitch_event_handler_unregister(esw);
 
        esw_info(esw->dev, "Disable: mode(%s), nvfs(%d), necvfs(%d), active vports(%d)\n",
                 esw->mode == MLX5_ESWITCH_LEGACY ? "LEGACY" : "OFFLOADS",