Lines Matching full:timestamp
14 Generates a timestamp for each incoming packet in (not necessarily
15 monotonic) system time. Reports the timestamp via recvmsg() in a
25 timestamp as struct timespec in nsec resolution.
33 Only for multicast:approximate transmit timestamp obtained by
34 reading the looped packet receive timestamp.
38 multiple timestamp sources, including hardware. Supports generating
48 same is true for all early receive timestamp options.
52 Always use SO_TIMESTAMP_NEW timestamp to always get timestamp in
65 Always use SO_TIMESTAMPNS_NEW timestamp to always get timestamp in
74 Supports multiple types of timestamp requests. As a result, this
82 The socket option configures timestamp generation for individual
83 sk_buffs (1.3.1), timestamp reporting to the socket's error
84 queue (1.3.2) and options (1.3.3). Timestamp generation can also
88 1.3.1 Timestamp Generation
96 calls, one to enable timestamp generation and one to disable it.
123 difference between this timestamp and one taken at
127 timestamp taken immediately before send() from this timestamp. On
130 a timestamp is generated at each layer. This allows for fine
138 over-report measurement, because the timestamp is generated when all
144 1.3.2 Timestamp Reporting
149 effect at the timestamp reporting locations in the stack. Timestamps
150 are only reported for packets that also have the relevant timestamp
164 1.3.3 Timestamp Options
176 based on timestamp order or payload inspection alone, then.
179 identifier and returns that along with the timestamp. The identifier
191 timestamp is always looped along with a struct sock_extended_err.
193 among all possibly concurrently outstanding timestamp requests for
207 a timestamp with counter N-1. SOF_TIMESTAMPING_OPT_ID_TCP
229 timestamps and on IPv6 packets with transmit timestamp. This option
230 extends them to IPv4 packets with transmit timestamp. One use case
237 timestamp as a cmsg alongside an empty packet, as opposed to
240 the timestamp even if sysctl net.core.tstamp_allow_data is 0.
246 transmit timestamp is available, the stats are available in a
267 each containing just one timestamp.
283 In addition to socket options, timestamp generation can be requested
303 Moreover, applications must still enable timestamp reporting via
322 correlating a timestamp with data is non-trivial. A range of bytes
336 bytestream consistently, if both semantics of the timestamp and the
340 bytestreams, we chose that a timestamp is generated only when all
352 has only one such field, only one timestamp can be generated.
354 In rare cases, a timestamp request can be missed if two requests are
357 send time with the value returned for each timestamp. It can prevent
363 These precautions ensure that the timestamp is generated only when all
364 bytes have passed a timestamp point, assuming that the network stack
398 Always use SO_TIMESTAMPING_NEW timestamp to always get timestamp in
416 software timestamp will be generated in the recvmsg() call and passed
417 in ts[0] when a real software timestamp is missing. This happens also
424 socket's error queue with the send timestamp(s) attached. A process
437 2.1.1.2 Timestamp types
442 type SCM_TSTAMP_* to define the actual timestamp passed in
450 case the timestamp is stored in ts[0].
467 error queue mechanism is just a method to piggyback the timestamp on.
478 block waiting on a timestamp, use poll or select. poll() will return
492 implicitly defined. ts[0] holds a software timestamp if set, ts[1]
493 is again deprecated and ts[2] holds a hardware timestamp if set.
670 timestamp becomes available after the actual MAC transmission, so the
671 driver must be prepared to correlate the timestamp with the original
673 error queue. To save the packet for when the timestamp becomes
676 PTP TX timestamp register (or sometimes a FIFO) where the timestamp
679 actual timestamp. To perform the correlation correctly between the
684 timestamp's availability, or the driver might have to poll after
688 TX timestamp is embedded into the packet by the MAC), and therefore
689 user space does not expect the packet annotated with the TX timestamp
695 skb is provided to the driver, for it to annotate it with a timestamp,
700 necessary when retrieving the timestamp needs a sleepable context. In
709 switches do. However, PHYs may be able to detect and timestamp PTP packets, for
735 timestamp is available.
776 timestamp.
782 current skb requires a TX timestamp ("``skb_shinfo(skb)->tx_flags &
790 is necessary to collect any TX timestamp for it. Here is where the typical
802 this enhanced check will avoid delivering a duplicated TX timestamp to user