net: devlink: warn on setting type on unregistered port

Port needs to be registered first before the type is set. Warn and
bail-out in case it is not.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/core/devlink.c b/net/core/devlink.c
index d78c8ce..860ab3a 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -5328,6 +5328,8 @@ static void __devlink_port_type_set(struct devlink_port *devlink_port,
 				    enum devlink_port_type type,
 				    void *type_dev)
 {
+	if (WARN_ON(!devlink_port->registered))
+		return;
 	devlink_port->type = type;
 	devlink_port->type_dev = type_dev;
 	devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_NEW);