Convert socks to unix_socks in scan_inflight, not in callbacks
Subsystems (3)
PATCH 2/3 Convert socks to unix_socks in scan_inflight, not in callbacks
The scan_inflight() routine scans through the unix sockets and calls some passed callback. The fact is that all these callbacks work with the unix_sock objects, not the sock ones, so make this conversion in the scan_inflight() before calling the callbacks.
This removes one unneeded variable from the inc_inflight_move_tail().
---
net/unix/garbage.c +9 -11
@@ -161,7 +161,7 @@ static inline struct sk_buff *sock_queue_head(struct sock *sk)for (skb =sock_queue_head (sk)->next, next = skb->next; \ skb !=sock_queue_head (sk); skb = next, next = skb->next) -static void scan_inflight(struct sock *x, void (*func)(struct sock *), +static void scan_inflight(struct sock *x, void (*func)(struct unix_sock *),struct sk_buff_head *hitlist) {struct sk_buff *skb;
@@ -185,9 +185,9 @@ static void scan_inflight(struct sock *x, void (*func)(struct sock *),* if it indeed does so */ struct sock *sk =unix_get_socket (*fp++); -if (sk) { +if (sk) { hit = true; -func (sk); +func (unix_sk (sk)); } }if (hit && hitlist !=NULL ) {
@@ -199,7 +199,7 @@ static void scan_inflight(struct sock *x, void (*func)(struct sock *),spin_unlock (&x->sk_receive_queue.lock); } -static void scan_children (struct sock *x,void (*func)(struct sock *), +static void scan_children (struct sock *x,void (*func)(struct unix_sock *),struct sk_buff_head *hitlist) {if (x->sk_state !=TCP_LISTEN )
@@ -235,20 +235,18 @@ static void scan_children(struct sock *x, void (*func)(struct sock *), } } -static void dec_inflight (struct sock *sk) +static void dec_inflight (struct unix_sock *usk) { -atomic_dec (&unix_sk (sk)->inflight); +atomic_dec (&usk->inflight); } -static void inc_inflight (struct sock *sk) +static void inc_inflight (struct unix_sock *usk) { -atomic_inc (&unix_sk (sk)->inflight); +atomic_inc (&usk->inflight); } -static void inc_inflight_move_tail (struct sock *sk) +static void inc_inflight_move_tail (struct unix_sock *u) { -struct unix_sock *u =unix_sk (sk); -atomic_inc (&u->inflight);/* * If this is still a candidate, move it to the end of the
Signature · 1 line
1.5.3.4
From: Pavel Emelyanov <[email protected]>
Date: Wed, 07 Nov 2007 16:56:21 +0300
Quoted 8 lines
The
scan_inflight()routine scans through the unix sockets and calls some passed callback. The fact is that all these callbacks work with theunix_sockobjects, not the sock ones, so make this conversion in thescan_inflight()before calling the callbacks.This removes one unneeded variable from the
inc_inflight_move_tail().Signed-off-by Pavel Emelyanov <[email protected]>
Applied, thanks Pavel.