]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: devlink: add not cleared type warning to port unregister
authorJiri Pirko <jiri@nvidia.com>
Wed, 2 Nov 2022 16:02:08 +0000 (17:02 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 4 Nov 2022 03:48:35 +0000 (20:48 -0700)
By the time port unregister is called. There should be no type set. Make
sure that the driver cleared it before and warn in case it didn't. This
enforces symmetricity with type set and port register.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/devlink.c

index 38de3a1dff36747db4fc94be1d94da9d55ee07e2..4a0ba86b86ed571ba2f8b385df9ea48d4b5ec7dd 100644 (file)
@@ -9977,6 +9977,7 @@ EXPORT_SYMBOL_GPL(devlink_port_register);
 void devl_port_unregister(struct devlink_port *devlink_port)
 {
        lockdep_assert_held(&devlink_port->devlink->lock);
+       WARN_ON(devlink_port->type != DEVLINK_PORT_TYPE_NOTSET);
 
        devlink_port_type_warn_cancel(devlink_port);
        devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_DEL);