diff options
author | Len Brown <len.brown@intel.com> | 2010-06-01 22:53:36 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2010-06-01 22:53:36 -0400 |
commit | b42f5b0f0fd8c1c442c1b29a3fbcb338e8bd7732 (patch) | |
tree | 194e13dfa85d2d2af8bd125acd80a445ee0def62 /net/unix/garbage.c | |
parent | fe955682d2153b35dffcf1673dff0491096a3f0a (diff) | |
parent | 0a76a34ff0804f1f413807b2e2d12117c2b602ca (diff) |
Merge branches 'bugzilla-14668' and 'misc-2.6.35' into release
Diffstat (limited to 'net/unix/garbage.c')
-rw-r--r-- | net/unix/garbage.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/net/unix/garbage.c b/net/unix/garbage.c index 14c22c3768da..c8df6fda0b1f 100644 --- a/net/unix/garbage.c +++ b/net/unix/garbage.c | |||
@@ -153,15 +153,6 @@ void unix_notinflight(struct file *fp) | |||
153 | } | 153 | } |
154 | } | 154 | } |
155 | 155 | ||
156 | static inline struct sk_buff *sock_queue_head(struct sock *sk) | ||
157 | { | ||
158 | return (struct sk_buff *)&sk->sk_receive_queue; | ||
159 | } | ||
160 | |||
161 | #define receive_queue_for_each_skb(sk, next, skb) \ | ||
162 | for (skb = sock_queue_head(sk)->next, next = skb->next; \ | ||
163 | skb != sock_queue_head(sk); skb = next, next = skb->next) | ||
164 | |||
165 | static void scan_inflight(struct sock *x, void (*func)(struct unix_sock *), | 156 | static void scan_inflight(struct sock *x, void (*func)(struct unix_sock *), |
166 | struct sk_buff_head *hitlist) | 157 | struct sk_buff_head *hitlist) |
167 | { | 158 | { |
@@ -169,7 +160,7 @@ static void scan_inflight(struct sock *x, void (*func)(struct unix_sock *), | |||
169 | struct sk_buff *next; | 160 | struct sk_buff *next; |
170 | 161 | ||
171 | spin_lock(&x->sk_receive_queue.lock); | 162 | spin_lock(&x->sk_receive_queue.lock); |
172 | receive_queue_for_each_skb(x, next, skb) { | 163 | skb_queue_walk_safe(&x->sk_receive_queue, skb, next) { |
173 | /* | 164 | /* |
174 | * Do we have file descriptors ? | 165 | * Do we have file descriptors ? |
175 | */ | 166 | */ |
@@ -225,7 +216,7 @@ static void scan_children(struct sock *x, void (*func)(struct unix_sock *), | |||
225 | * and perform a scan on them as well. | 216 | * and perform a scan on them as well. |
226 | */ | 217 | */ |
227 | spin_lock(&x->sk_receive_queue.lock); | 218 | spin_lock(&x->sk_receive_queue.lock); |
228 | receive_queue_for_each_skb(x, next, skb) { | 219 | skb_queue_walk_safe(&x->sk_receive_queue, skb, next) { |
229 | u = unix_sk(skb->sk); | 220 | u = unix_sk(skb->sk); |
230 | 221 | ||
231 | /* | 222 | /* |