forked from Minki/linux
[IPV6] SNMP: Move some statistic bits to net/ipv6/proc.c.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
bf99f1bde3
commit
49ed67a9ee
@ -712,39 +712,6 @@ int ipv6_opt_accepted(struct sock *sk, struct sk_buff *skb)
|
||||
|
||||
EXPORT_SYMBOL_GPL(ipv6_opt_accepted);
|
||||
|
||||
int
|
||||
snmp6_mib_init(void *ptr[2], size_t mibsize, size_t mibalign)
|
||||
{
|
||||
if (ptr == NULL)
|
||||
return -EINVAL;
|
||||
|
||||
ptr[0] = __alloc_percpu(mibsize);
|
||||
if (!ptr[0])
|
||||
goto err0;
|
||||
|
||||
ptr[1] = __alloc_percpu(mibsize);
|
||||
if (!ptr[1])
|
||||
goto err1;
|
||||
|
||||
return 0;
|
||||
|
||||
err1:
|
||||
free_percpu(ptr[0]);
|
||||
ptr[0] = NULL;
|
||||
err0:
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
void
|
||||
snmp6_mib_free(void *ptr[2])
|
||||
{
|
||||
if (ptr == NULL)
|
||||
return;
|
||||
free_percpu(ptr[0]);
|
||||
free_percpu(ptr[1]);
|
||||
ptr[0] = ptr[1] = NULL;
|
||||
}
|
||||
|
||||
static int __init init_ipv6_mibs(void)
|
||||
{
|
||||
if (snmp6_mib_init((void **)ipv6_statistics, sizeof (struct ipstats_mib),
|
||||
|
@ -346,4 +346,34 @@ int snmp6_free_dev(struct inet6_dev *idev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int snmp6_mib_init(void *ptr[2], size_t mibsize, size_t mibalign)
|
||||
{
|
||||
if (ptr == NULL)
|
||||
return -EINVAL;
|
||||
|
||||
ptr[0] = __alloc_percpu(mibsize);
|
||||
if (!ptr[0])
|
||||
goto err0;
|
||||
|
||||
ptr[1] = __alloc_percpu(mibsize);
|
||||
if (!ptr[1])
|
||||
goto err1;
|
||||
|
||||
return 0;
|
||||
|
||||
err1:
|
||||
free_percpu(ptr[0]);
|
||||
ptr[0] = NULL;
|
||||
err0:
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
void snmp6_mib_free(void *ptr[2])
|
||||
{
|
||||
if (ptr == NULL)
|
||||
return;
|
||||
free_percpu(ptr[0]);
|
||||
free_percpu(ptr[1]);
|
||||
ptr[0] = ptr[1] = NULL;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user