Le lundi 16 mai 2011 Ã 15:38 -0400, David Miller a Ãcrit : > From: Randy Dunlap <randy.dunlap@xxxxxxxxxx> > Date: Mon, 16 May 2011 12:35:34 -0700 > > > On Mon, 16 May 2011 15:10:19 +1000 Stephen Rothwell wrote: > > > >> Hi all, > >> > >> Changes since 20110513: > > > > > > when CONFIG_PROC_SYSCTL is not enabled: > > > > ping.c:(.text+0x52af3): undefined reference to `inet_get_ping_group_range_net' > > Vasiliy, please fix this. Vasily seems busy, here is a fix for this problem. I tested new ping was working even if we could not set the group range anymore. Thanks [PATCH net-next-2.6] net: ping: fix build error Randy Dunlap reported following build error if CONFIG_PROC_SYSCTL is not enabled: ping.c:(.text+0x52af3): undefined reference to `inet_get_ping_group_range_net' Also made inet_get_ping_group_range_table() static Reported-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx> Signed-off-by: Eric Dumazet <eric.dumazet@xxxxxxxxx> CC: Vasiliy Kulikov <segoon@xxxxxxxxxxxx> --- net/ipv4/inet_connection_sock.c | 14 ++++++++++++++ net/ipv4/sysctl_net_ipv4.c | 14 +------------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index 3a2ba56..e5c0729 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -23,6 +23,7 @@ #include <net/route.h> #include <net/tcp_states.h> #include <net/xfrm.h> +#include <net/ping.h> #ifdef INET_CSK_DEBUG const char inet_csk_timer_bug_msg[] = "inet_csk BUG: unknown timer value\n"; @@ -52,6 +53,19 @@ void inet_get_local_port_range(int *low, int *high) } EXPORT_SYMBOL(inet_get_local_port_range); +void inet_get_ping_group_range_net(struct net *net, gid_t *low, gid_t *high) +{ + const gid_t *data = net->ipv4.sysctl_ping_group_range; + unsigned int seq; + + do { + seq = read_seqbegin(&sysctl_local_ports.lock); + + *low = data[0]; + *high = data[1]; + } while (read_seqretry(&sysctl_local_ports.lock, seq)); +} + int inet_csk_bind_conflict(const struct sock *sk, const struct inet_bind_bucket *tb) { diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c index 28e8273..dc5d2a0 100644 --- a/net/ipv4/sysctl_net_ipv4.c +++ b/net/ipv4/sysctl_net_ipv4.c @@ -73,19 +73,7 @@ static int ipv4_local_port_range(ctl_table *table, int write, } -void inet_get_ping_group_range_net(struct net *net, gid_t *low, gid_t *high) -{ - gid_t *data = net->ipv4.sysctl_ping_group_range; - unsigned seq; - do { - seq = read_seqbegin(&sysctl_local_ports.lock); - - *low = data[0]; - *high = data[1]; - } while (read_seqretry(&sysctl_local_ports.lock, seq)); -} - -void inet_get_ping_group_range_table(struct ctl_table *table, gid_t *low, gid_t *high) +static void inet_get_ping_group_range_table(struct ctl_table *table, gid_t *low, gid_t *high) { gid_t *data = table->data; unsigned seq; -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html