From: Jiri Pirko <j...@mellanox.com>

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 <j...@mellanox.com>
---
v1->v2:
- new patch
---
 net/core/devlink.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/net/core/devlink.c b/net/core/devlink.c
index f77a68f72d14..ff3e31010954 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -5365,6 +5365,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);
-- 
2.17.2

Reply via email to