1__SKB_RECV_DATAGRAM(9)         Linux Networking         __SKB_RECV_DATAGRAM(9)
2
3
4

NAME

6       __skb_recv_datagram - Receive a datagram skbuff
7

SYNOPSIS

9       struct sk_buff * __skb_recv_datagram(struct sock * sk, unsigned flags,
10                                            int * peeked, int * err);
11

ARGUMENTS

13       sk
14           socket
15
16       flags
17           MSG_ flags
18
19       peeked
20           returns non-zero if this packet has been seen before
21
22       err
23           error code returned
24

DESCRIPTION

26       Get a datagram skbuff, understands the peeking, nonblocking wakeups and
27       possible races. This replaces identical code in packet, raw and udp, as
28       well as the IPX AX.25 and Appletalk. It also finally fixes the long
29       standing peek and read race for datagram sockets. If you alter this
30       routine remember it must be re-entrant.
31
32       This function will lock the socket if a skb is returned, so the caller
33       needs to unlock the socket in that case (usually by calling
34       skb_free_datagram)
35
36       * It does not lock socket since today. This function is * free of race
37       conditions. This measure should/can improve * significantly datagram
38       socket latencies at high loads, * when data copying to user space takes
39       lots of time. * (BTW I´ve just killed the last cli in
40       IP/IPv6/core/netlink/packet * 8) Great win.) * --ANK (980729)
41
42       The order of the tests when we find no data waiting are specified quite
43       explicitly by POSIX 1003.1g, don´t change them without having the
44       standard around please.
45
47Kernel Hackers Manual 2.6.         June 2019            __SKB_RECV_DATAGRAM(9)
Impressum