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. The actual change from SIZE_MAX to ARRAY_SIZE will take place
in subsequent commits.

Signed-off-by: Joel Granados <[email protected]>
---
 drivers/net/vrf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
index 6043e63b42f9..6801f15ac609 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
@@ -1979,7 +1979,8 @@ static int vrf_netns_init_sysctl(struct net *net, struct 
netns_vrf *nn_vrf)
        /* init the extra1 parameter with the reference to current netns */
        table[0].extra1 = net;
 
-       nn_vrf->ctl_hdr = register_net_sysctl(net, "net/vrf", table);
+       nn_vrf->ctl_hdr = register_net_sysctl_sz(net, "net/vrf", table,
+                                                ARRAY_SIZE(vrf_table));
        if (!nn_vrf->ctl_hdr) {
                kfree(table);
                return -ENOMEM;
-- 
2.30.2

Reply via email to