Commit 1b8e0bdb authored by Leon Romanovsky's avatar Leon Romanovsky Committed by David S. Miller
Browse files

qed: Move devlink registration to be last devlink command



This change prevents from users to access device before devlink is
fully configured.

Signed-off-by: default avatarLeon Romanovsky <leonro@nvidia.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 7911c8bd
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -215,7 +215,6 @@ struct devlink *qed_devlink_register(struct qed_dev *cdev)
	qdevlink = devlink_priv(dl);
	qdevlink->cdev = cdev;

	devlink_register(dl);
	rc = devlink_params_register(dl, qed_devlink_params,
				     ARRAY_SIZE(qed_devlink_params));
	if (rc)
@@ -226,15 +225,13 @@ struct devlink *qed_devlink_register(struct qed_dev *cdev)
					   QED_DEVLINK_PARAM_ID_IWARP_CMT,
					   value);

	devlink_params_publish(dl);
	cdev->iwarp_cmt = false;

	qed_fw_reporters_create(dl);

	devlink_register(dl);
	return dl;

err_unregister:
	devlink_unregister(dl);
	devlink_free(dl);

	return ERR_PTR(rc);
@@ -245,11 +242,11 @@ void qed_devlink_unregister(struct devlink *devlink)
	if (!devlink)
		return;

	devlink_unregister(devlink);
	qed_fw_reporters_destroy(devlink);

	devlink_params_unregister(devlink, qed_devlink_params,
				  ARRAY_SIZE(qed_devlink_params));

	devlink_unregister(devlink);
	devlink_free(devlink);
}