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 <[email protected]>
---
 net/ax25/sysctl_net_ax25.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/ax25/sysctl_net_ax25.c b/net/ax25/sysctl_net_ax25.c
index 2154d004d3dc..db66e11e7fe8 100644
--- a/net/ax25/sysctl_net_ax25.c
+++ b/net/ax25/sysctl_net_ax25.c
@@ -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;
-- 
2.30.2

Reply via email to