ax.25: Update to register_net_sysctl_sz
authorJoel Granados <joel.granados@gmail.com>
Wed, 9 Aug 2023 10:50:01 +0000 (12:50 +0200)
committerLuis Chamberlain <mcgrof@kernel.org>
Tue, 15 Aug 2023 22:26:17 +0000 (15:26 -0700)
Move from register_net_sysctl to register_net_sysctl_sz and pass the
ARRAY_SIZE of the ctl_table array that was used to create the table
variable. We need to move to the new function in preparation for when we
change SIZE_MAX to ARRAY_SIZE() in the register_net_sysctl macro.
Failing to do so would erroneously allow ARRAY_SIZE() to be called on a
pointer. We hold off the SIZE_MAX to ARRAY_SIZE change until we have
migrated all the relevant net sysctl registering functions to
register_net_sysctl_sz in subsequent commits.

Signed-off-by: Joel Granados <j.granados@samsung.com>
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
net/ax25/sysctl_net_ax25.c

index 2154d00..db66e11 100644 (file)
@@ -159,7 +159,8 @@ int ax25_register_dev_sysctl(ax25_dev *ax25_dev)
                table[k].data = &ax25_dev->values[k];
 
        snprintf(path, sizeof(path), "net/ax25/%s", ax25_dev->dev->name);
-       ax25_dev->sysheader = register_net_sysctl(&init_net, path, table);
+       ax25_dev->sysheader = register_net_sysctl_sz(&init_net, path, table,
+                                                    ARRAY_SIZE(ax25_param_table));
        if (!ax25_dev->sysheader) {
                kfree(table);
                return -ENOMEM;