diff options
| author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-04-20 13:03:51 +0000 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-04-20 16:37:13 -0700 | 
| commit | aa395145165cb06a0d0885221bbe0ce4a564391d (patch) | |
| tree | 118b0403621f10db8dc3dbf12079f9af5b19e05d /net/core/stream.c | |
| parent | ab9304717f7624c41927f442e6b6d418b2d8b3e4 (diff) | |
| download | olio-linux-3.10-aa395145165cb06a0d0885221bbe0ce4a564391d.tar.xz olio-linux-3.10-aa395145165cb06a0d0885221bbe0ce4a564391d.zip  | |
net: sk_sleep() helper
Define a new function to return the waitqueue of a "struct sock".
static inline wait_queue_head_t *sk_sleep(struct sock *sk)
{
	return sk->sk_sleep;
}
Change all read occurrences of sk_sleep by a call to this function.
Needed for a future RCU conversion. sk_sleep wont be a field directly
available.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/stream.c')
| -rw-r--r-- | net/core/stream.c | 16 | 
1 files changed, 8 insertions, 8 deletions
diff --git a/net/core/stream.c b/net/core/stream.c index a37debfeb1b..7b3c3f30b10 100644 --- a/net/core/stream.c +++ b/net/core/stream.c @@ -32,8 +32,8 @@ void sk_stream_write_space(struct sock *sk)  	if (sk_stream_wspace(sk) >= sk_stream_min_wspace(sk) && sock) {  		clear_bit(SOCK_NOSPACE, &sock->flags); -		if (sk->sk_sleep && waitqueue_active(sk->sk_sleep)) -			wake_up_interruptible_poll(sk->sk_sleep, POLLOUT | +		if (sk_sleep(sk) && waitqueue_active(sk_sleep(sk))) +			wake_up_interruptible_poll(sk_sleep(sk), POLLOUT |  						POLLWRNORM | POLLWRBAND);  		if (sock->fasync_list && !(sk->sk_shutdown & SEND_SHUTDOWN))  			sock_wake_async(sock, SOCK_WAKE_SPACE, POLL_OUT); @@ -66,13 +66,13 @@ int sk_stream_wait_connect(struct sock *sk, long *timeo_p)  		if (signal_pending(tsk))  			return sock_intr_errno(*timeo_p); -		prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE); +		prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);  		sk->sk_write_pending++;  		done = sk_wait_event(sk, timeo_p,  				     !sk->sk_err &&  				     !((1 << sk->sk_state) &  				       ~(TCPF_ESTABLISHED | TCPF_CLOSE_WAIT))); -		finish_wait(sk->sk_sleep, &wait); +		finish_wait(sk_sleep(sk), &wait);  		sk->sk_write_pending--;  	} while (!done);  	return 0; @@ -96,13 +96,13 @@ void sk_stream_wait_close(struct sock *sk, long timeout)  		DEFINE_WAIT(wait);  		do { -			prepare_to_wait(sk->sk_sleep, &wait, +			prepare_to_wait(sk_sleep(sk), &wait,  					TASK_INTERRUPTIBLE);  			if (sk_wait_event(sk, &timeout, !sk_stream_closing(sk)))  				break;  		} while (!signal_pending(current) && timeout); -		finish_wait(sk->sk_sleep, &wait); +		finish_wait(sk_sleep(sk), &wait);  	}  } @@ -126,7 +126,7 @@ int sk_stream_wait_memory(struct sock *sk, long *timeo_p)  	while (1) {  		set_bit(SOCK_ASYNC_NOSPACE, &sk->sk_socket->flags); -		prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE); +		prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);  		if (sk->sk_err || (sk->sk_shutdown & SEND_SHUTDOWN))  			goto do_error; @@ -157,7 +157,7 @@ int sk_stream_wait_memory(struct sock *sk, long *timeo_p)  		*timeo_p = current_timeo;  	}  out: -	finish_wait(sk->sk_sleep, &wait); +	finish_wait(sk_sleep(sk), &wait);  	return err;  do_error:  |