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
165 1.3.3 Timestamp Options
177 based on timestamp order or payload inspection alone, then.
180 identifier and returns that along with the timestamp. The identifier
192 timestamp is always looped along with a struct sock_extended_err.
194 among all possibly concurrently outstanding timestamp requests for
208 a timestamp with counter N-1. SOF_TIMESTAMPING_OPT_ID_TCP
230 timestamps and on IPv6 packets with transmit timestamp. This option
231 extends them to IPv4 packets with transmit timestamp. One use case
238 timestamp as a cmsg alongside an empty packet, as opposed to
241 the timestamp even if sysctl net.core.tstamp_allow_data is 0.
247 transmit timestamp is available, the stats are available in a
268 each containing just one timestamp.
271 Filter out spurious receive timestamps: report a receive timestamp
272 only if the matching timestamp generation flag is enabled.
277 Including those that request timestamp reporting with
279 do not request receive timestamp generation. This can happen when
301 In addition to socket options, timestamp generation can be requested
321 Moreover, applications must still enable timestamp reporting via
340 correlating a timestamp with data is non-trivial. A range of bytes
354 bytestream consistently, if both semantics of the timestamp and the
358 bytestreams, we chose that a timestamp is generated only when all
370 has only one such field, only one timestamp can be generated.
372 In rare cases, a timestamp request can be missed if two requests are
375 send time with the value returned for each timestamp. It can prevent
381 These precautions ensure that the timestamp is generated only when all
382 bytes have passed a timestamp point, assuming that the network stack
416 Always use SO_TIMESTAMPING_NEW timestamp to always get timestamp in
434 software timestamp will be generated in the recvmsg() call and passed
435 in ts[0] when a real software timestamp is missing. This happens also
442 socket's error queue with the send timestamp(s) attached. A process
455 2.1.1.2 Timestamp types
460 type SCM_TSTAMP_* to define the actual timestamp passed in
468 case the timestamp is stored in ts[0].
485 error queue mechanism is just a method to piggyback the timestamp on.
496 block waiting on a timestamp, use poll or select. poll() will return
510 implicitly defined. ts[0] holds a software timestamp if set, ts[1]
511 is again deprecated and ts[2] holds a hardware timestamp if set.
688 timestamp becomes available after the actual MAC transmission, so the
689 driver must be prepared to correlate the timestamp with the original
691 error queue. To save the packet for when the timestamp becomes
694 PTP TX timestamp register (or sometimes a FIFO) where the timestamp
697 actual timestamp. To perform the correlation correctly between the
702 timestamp's availability, or the driver might have to poll after
706 TX timestamp is embedded into the packet by the MAC), and therefore
707 user space does not expect the packet annotated with the TX timestamp
713 skb is provided to the driver, for it to annotate it with a timestamp,
718 necessary when retrieving the timestamp needs a sleepable context. In
727 switches do. However, PHYs may be able to detect and timestamp PTP packets, for
753 timestamp is available.
794 timestamp.
800 current skb requires a TX timestamp ("``skb_shinfo(skb)->tx_flags &
808 is necessary to collect any TX timestamp for it. Here is where the typical
820 this enhanced check will avoid delivering a duplicated TX timestamp to user