[ARP]: neigh_parms_put(destroy) are essentially local to core/neighbour.c.
Make them static. [ Moved the inline before, instead of after, call sites. -DaveM ] Signed-off-by: Denis V. Lunev <den@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
14db4133d5
commit
06f0511df1
@@ -213,7 +213,6 @@ extern struct neighbour *neigh_event_ns(struct neigh_table *tbl,
|
|||||||
|
|
||||||
extern struct neigh_parms *neigh_parms_alloc(struct net_device *dev, struct neigh_table *tbl);
|
extern struct neigh_parms *neigh_parms_alloc(struct net_device *dev, struct neigh_table *tbl);
|
||||||
extern void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms);
|
extern void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms);
|
||||||
extern void neigh_parms_destroy(struct neigh_parms *parms);
|
|
||||||
extern unsigned long neigh_rand_reach_time(unsigned long base);
|
extern unsigned long neigh_rand_reach_time(unsigned long base);
|
||||||
|
|
||||||
extern void pneigh_enqueue(struct neigh_table *tbl, struct neigh_parms *p,
|
extern void pneigh_enqueue(struct neigh_table *tbl, struct neigh_parms *p,
|
||||||
@@ -254,12 +253,6 @@ static inline void __neigh_parms_put(struct neigh_parms *parms)
|
|||||||
atomic_dec(&parms->refcnt);
|
atomic_dec(&parms->refcnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void neigh_parms_put(struct neigh_parms *parms)
|
|
||||||
{
|
|
||||||
if (atomic_dec_and_test(&parms->refcnt))
|
|
||||||
neigh_parms_destroy(parms);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline struct neigh_parms *neigh_parms_clone(struct neigh_parms *parms)
|
static inline struct neigh_parms *neigh_parms_clone(struct neigh_parms *parms)
|
||||||
{
|
{
|
||||||
atomic_inc(&parms->refcnt);
|
atomic_inc(&parms->refcnt);
|
||||||
|
@@ -577,6 +577,13 @@ static int pneigh_ifdown(struct neigh_table *tbl, struct net_device *dev)
|
|||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void neigh_parms_destroy(struct neigh_parms *parms);
|
||||||
|
|
||||||
|
static inline void neigh_parms_put(struct neigh_parms *parms)
|
||||||
|
{
|
||||||
|
if (atomic_dec_and_test(&parms->refcnt))
|
||||||
|
neigh_parms_destroy(parms);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* neighbour must already be out of the table;
|
* neighbour must already be out of the table;
|
||||||
@@ -1350,7 +1357,7 @@ void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms)
|
|||||||
NEIGH_PRINTK1("neigh_parms_release: not found\n");
|
NEIGH_PRINTK1("neigh_parms_release: not found\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
void neigh_parms_destroy(struct neigh_parms *parms)
|
static void neigh_parms_destroy(struct neigh_parms *parms)
|
||||||
{
|
{
|
||||||
release_net(parms->net);
|
release_net(parms->net);
|
||||||
kfree(parms);
|
kfree(parms);
|
||||||
|
Reference in New Issue
Block a user