linux/net/core
David Miller f8d570a474 net: Fix recursive descent in __scm_destroy().
__scm_destroy() walks the list of file descriptors in the scm_fp_list
pointed to by the scm_cookie argument.

Those, in turn, can close sockets and invoke __scm_destroy() again.

There is nothing which limits how deeply this can occur.

The idea for how to fix this is from Linus.  Basically, we do all of
the fput()s at the top level by collecting all of the scm_fp_list
objects hit by an fput().  Inside of the initial __scm_destroy() we
keep running the list until it is empty.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-11-06 13:51:50 -08:00
..
datagram.c net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
dev_mcast.c net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
dev.c net: Fix disjunct computation of netdev features 2008-10-23 01:11:29 -07:00
dst.c net: fix scheduling of dst_gc_task by __dst_free 2008-09-12 16:16:37 -07:00
ethtool.c
fib_rules.c
filter.c
flow.c
gen_estimator.c Revert "pkt_sched: Protect gen estimators under est_lock." 2008-08-18 22:32:10 -07:00
gen_stats.c
iovec.c
kmap_skb.h
link_watch.c
Makefile net: Add SKB DMA mapping helper functions. 2008-09-11 04:51:14 -07:00
neighbour.c neigh: Remove by-hand SKB queue handling. 2008-09-23 01:11:18 -07:00
net_namespace.c netns: add register_pernet_gen_subsys/unregister_pernet_gen_subsys 2008-10-30 23:55:16 -07:00
net-sysfs.c net: network device name ifalias support 2008-09-22 21:28:11 -07:00
net-sysfs.h
netevent.c
netpoll.c netdev: Fix lockdep warnings in multiqueue configurations. 2008-07-31 16:58:50 -07:00
pktgen.c pktgen: fix multiple queue warning 2008-10-28 13:21:51 -07:00
request_sock.c
rtnetlink.c net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely) 2008-10-16 15:24:51 -07:00
scm.c net: Fix recursive descent in __scm_destroy(). 2008-11-06 13:51:50 -08:00
skb_dma_map.c net: Fix off-by-one in skb_dma_map 2008-10-12 21:07:34 -07:00
skbuff.c net: add documentation for skb recycling 2008-11-01 21:01:09 -07:00
sock.c net: wrap sk->sk_backlog_rcv() 2008-10-07 14:18:42 -07:00
stream.c net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
sysctl_net_core.c
user_dma.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-26 20:17:56 -07:00
utils.c