1. NAME

sk_wait_data - wait for data to arrive at sk_receive_queue

2. SYNOPSIS

int sk_wait_data(struct sock *  sk , long *  timeo );

3. ARGUMENTS

sk
    sock to wait on

timeo
    for how long

4. DESCRIPTION

Now socket state including sk->sk_err is changed only under lock, hence we may omit checks after joining wait queue. We check receive queue before schedule only as optimization; it is very likely that release_sock added new data.

5. COPYRIGHT