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
145 timestamp is generated by the kernel when it receives packet a
152 1.3.2 Timestamp Reporting
157 effect at the timestamp reporting locations in the stack. Timestamps
158 are only reported for packets that also have the relevant timestamp
173 1.3.3 Timestamp Options
185 based on timestamp order or payload inspection alone, then.
188 identifier and returns that along with the timestamp. The identifier
200 timestamp is always looped along with a struct sock_extended_err.
202 among all possibly concurrently outstanding timestamp requests for
230 a timestamp with counter N-1. SOF_TIMESTAMPING_OPT_ID_TCP
252 timestamps and on IPv6 packets with transmit timestamp. This option
253 extends them to IPv4 packets with transmit timestamp. One use case
260 timestamp as a cmsg alongside an empty packet, as opposed to
263 the timestamp even if sysctl net.core.tstamp_allow_data is 0.
269 transmit timestamp is available, the stats are available in a
290 each containing just one timestamp.
293 Filter out spurious receive timestamps: report a receive timestamp
294 only if the matching timestamp generation flag is enabled.
299 Including those that request timestamp reporting with
301 do not request receive timestamp generation. This can happen when
323 In addition to socket options, timestamp generation can be requested
343 Moreover, applications must still enable timestamp reporting via
362 correlating a timestamp with data is non-trivial. A range of bytes
376 bytestream consistently, if both semantics of the timestamp and the
380 bytestreams, we chose that a timestamp is generated only when all
392 has only one such field, only one timestamp can be generated.
394 In rare cases, a timestamp request can be missed if two requests are
397 send time with the value returned for each timestamp. It can prevent
403 These precautions ensure that the timestamp is generated only when all
404 bytes have passed a timestamp point, assuming that the network stack
438 Always use SO_TIMESTAMPING_NEW timestamp to always get timestamp in
456 software timestamp will be generated in the recvmsg() call and passed
457 in ts[0] when a real software timestamp is missing. This happens also
464 socket's error queue with the send timestamp(s) attached. A process
477 2.1.1.2 Timestamp types
482 type SCM_TSTAMP_* to define the actual timestamp passed in
490 case the timestamp is stored in ts[0].
507 error queue mechanism is just a method to piggyback the timestamp on.
518 block waiting on a timestamp, use poll or select. poll() will return
532 implicitly defined. ts[0] holds a software timestamp if set, ts[1]
533 is again deprecated and ts[2] holds a hardware timestamp if set.
720 timestamp becomes available after the actual MAC transmission, so the
721 driver must be prepared to correlate the timestamp with the original
723 error queue. To save the packet for when the timestamp becomes
726 PTP TX timestamp register (or sometimes a FIFO) where the timestamp
729 actual timestamp. To perform the correlation correctly between the
734 timestamp's availability, or the driver might have to poll after
738 TX timestamp is embedded into the packet by the MAC), and therefore
739 user space does not expect the packet annotated with the TX timestamp
745 skb is provided to the driver, for it to annotate it with a timestamp,
750 necessary when retrieving the timestamp needs a sleepable context. In
759 switches do. However, PHYs may be able to detect and timestamp PTP packets, for
785 timestamp is available.
824 timestamp.
830 current skb requires a TX timestamp ("``skb_shinfo(skb)->tx_flags &
838 is necessary to collect any TX timestamp for it. Here is where the typical
850 this enhanced check will avoid delivering a duplicated TX timestamp to user