2001-02-22 14:32:50

by Russell King

[permalink] [raw]
Subject: ipv4: 2.4.2: unused static variables

Hi,

With CONFIG_SYSCTL=n, I get the following warnings:

sysctl_net_ipv4.c:50: warning: `tcp_retr1_max' defined but not used
sysctl_net_ipv4.c:52: warning: `ip_local_port_range_min' defined but not used
sysctl_net_ipv4.c:53: warning: `ip_local_port_range_max' defined but not used

These are defined static in sysctl_net_ipv4.c, and appear to only be
exported via procfs. In other words, you can set them to whatever you
like and the IPv4 stack couldn't care less.

Why do we have them? If they're not used, can we either eliminate them,
or else move their definition within the '#ifdef CONFIG_SYSCTL' to
eliminate the warning?

Thanks.

--
Russell King ([email protected]) The developer of ARM Linux
http://www.arm.linux.org.uk/personal/aboutme.html


2001-02-23 01:39:42

by David Miller

[permalink] [raw]
Subject: Re: ipv4: 2.4.2: unused static variables


Russell King writes:
> With CONFIG_SYSCTL=n, I get the following warnings:
>
> sysctl_net_ipv4.c:50: warning: `tcp_retr1_max' defined but not used
> sysctl_net_ipv4.c:52: warning: `ip_local_port_range_min' defined but not used
> sysctl_net_ipv4.c:53: warning: `ip_local_port_range_max' defined but not used
>
> These are defined static in sysctl_net_ipv4.c, and appear to only be
> exported via procfs. In other words, you can set them to whatever you
> like and the IPv4 stack couldn't care less.
>
> Why do we have them? If they're not used, can we either eliminate them,
> or else move their definition within the '#ifdef CONFIG_SYSCTL' to
> eliminate the warning?

They aren't set to anything because they are not sysctl
"values", they are sysctl "limits". Ie. they tell the sysctl
layer what legal range the user's setting of a particular sysctl
must reside in.

The fix is to enclose these things in CONFIG_SYSCTL, which I have
done in my tree, thanks for bringing this to my attention.

Later,
David S. Miller
[email protected]