Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
f708f528
Commit
f708f528
authored
Jun 11, 2003
by
Hideaki Yoshifuji
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[NET]: Make neigh_parms setup/teardown handling symmetric.
parent
f1e5cedd
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
9 additions
and
8 deletions
+9
-8
net/core/neighbour.c
net/core/neighbour.c
+0
-6
net/ipv4/devinet.c
net/ipv4/devinet.c
+3
-1
net/ipv6/addrconf.c
net/ipv6/addrconf.c
+2
-1
net/ipv6/ndisc.c
net/ipv6/ndisc.c
+3
-0
net/netsyms.c
net/netsyms.c
+1
-0
No files found.
net/core/neighbour.c
View file @
f708f528
...
@@ -1114,9 +1114,6 @@ void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms)
...
@@ -1114,9 +1114,6 @@ void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms)
if
(
*
p
==
parms
)
{
if
(
*
p
==
parms
)
{
*
p
=
parms
->
next
;
*
p
=
parms
->
next
;
write_unlock_bh
(
&
tbl
->
lock
);
write_unlock_bh
(
&
tbl
->
lock
);
#ifdef CONFIG_SYSCTL
neigh_sysctl_unregister
(
parms
);
#endif
kfree
(
parms
);
kfree
(
parms
);
return
;
return
;
}
}
...
@@ -1179,9 +1176,6 @@ int neigh_table_clear(struct neigh_table *tbl)
...
@@ -1179,9 +1176,6 @@ int neigh_table_clear(struct neigh_table *tbl)
}
}
}
}
write_unlock
(
&
neigh_tbl_lock
);
write_unlock
(
&
neigh_tbl_lock
);
#ifdef CONFIG_SYSCTL
neigh_sysctl_unregister
(
&
tbl
->
parms
);
#endif
return
0
;
return
0
;
}
}
...
...
net/ipv4/devinet.c
View file @
f708f528
...
@@ -197,7 +197,9 @@ static void inetdev_destroy(struct in_device *in_dev)
...
@@ -197,7 +197,9 @@ static void inetdev_destroy(struct in_device *in_dev)
/* in_dev_put following below will kill the in_device */
/* in_dev_put following below will kill the in_device */
write_unlock_bh
(
&
inetdev_lock
);
write_unlock_bh
(
&
inetdev_lock
);
#ifdef CONFIG_SYSCTL
neigh_sysctl_unregister
(
in_dev
->
arp_parms
);
#endif
neigh_parms_release
(
&
arp_tbl
,
in_dev
->
arp_parms
);
neigh_parms_release
(
&
arp_tbl
,
in_dev
->
arp_parms
);
in_dev_put
(
in_dev
);
in_dev_put
(
in_dev
);
}
}
...
...
net/ipv6/addrconf.c
View file @
f708f528
...
@@ -1893,10 +1893,11 @@ static int addrconf_ifdown(struct net_device *dev, int how)
...
@@ -1893,10 +1893,11 @@ static int addrconf_ifdown(struct net_device *dev, int how)
/* Shot the device (if unregistered) */
/* Shot the device (if unregistered) */
if
(
how
==
1
)
{
if
(
how
==
1
)
{
neigh_parms_release
(
&
nd_tbl
,
idev
->
nd_parms
);
#ifdef CONFIG_SYSCTL
#ifdef CONFIG_SYSCTL
addrconf_sysctl_unregister
(
&
idev
->
cnf
);
addrconf_sysctl_unregister
(
&
idev
->
cnf
);
neigh_sysctl_unregister
(
&
idev
->
nd_parms
);
#endif
#endif
neigh_parms_release
(
&
nd_tbl
,
idev
->
nd_parms
);
in6_dev_put
(
idev
);
in6_dev_put
(
idev
);
}
}
return
0
;
return
0
;
...
...
net/ipv6/ndisc.c
View file @
f708f528
...
@@ -1487,6 +1487,9 @@ int __init ndisc_init(struct net_proto_family *ops)
...
@@ -1487,6 +1487,9 @@ int __init ndisc_init(struct net_proto_family *ops)
void
ndisc_cleanup
(
void
)
void
ndisc_cleanup
(
void
)
{
{
#ifdef CONFIG_SYSCTL
neigh_sysctl_unregister
(
&
nd_tbl
.
parms
);
#endif
neigh_table_clear
(
&
nd_tbl
);
neigh_table_clear
(
&
nd_tbl
);
sock_release
(
ndisc_socket
);
sock_release
(
ndisc_socket
);
ndisc_socket
=
NULL
;
/* For safety. */
ndisc_socket
=
NULL
;
/* For safety. */
...
...
net/netsyms.c
View file @
f708f528
...
@@ -190,6 +190,7 @@ EXPORT_SYMBOL(neigh_app_ns);
...
@@ -190,6 +190,7 @@ EXPORT_SYMBOL(neigh_app_ns);
#endif
#endif
#ifdef CONFIG_SYSCTL
#ifdef CONFIG_SYSCTL
EXPORT_SYMBOL
(
neigh_sysctl_register
);
EXPORT_SYMBOL
(
neigh_sysctl_register
);
EXPORT_SYMBOL
(
neigh_sysctl_unregister
);
#endif
#endif
EXPORT_SYMBOL
(
pneigh_lookup
);
EXPORT_SYMBOL
(
pneigh_lookup
);
EXPORT_SYMBOL
(
pneigh_enqueue
);
EXPORT_SYMBOL
(
pneigh_enqueue
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment