---
name: "sk_wait_data"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/sk_wait_data"
---

# sk\_wait\_data(9)

wait for data to arrive at sk\_receive\_queue

## NAME

sk\_wait\_data - wait for data to arrive at sk\_receive\_queue

## SYNOPSIS

**int sk\_wait\_data(struct sock \*** *sk***, long \*** *timeo***, const struct sk\_buff \*** *skb***);**

## ARGUMENTS

*sk*

sock to wait on

*timeo*

for how long

*skb*

last skb seen on sk\_receive\_queue

## 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.

## COPYRIGHT
