rcv_tstamp
tp->rcv_tstamp = tcp_jiffies32;
u32 rcv_tstamp; /* timestamp of last received ACK (for keepalives) */
tcp_jiffies32 - tp->rcv_tstamp);
info->tcpi_last_ack_recv = jiffies_to_msecs(now - tp->rcv_tstamp);
CACHELINE_ASSERT_GROUP_MEMBER(struct tcp_sock, tcp_sock_write_txrx, rcv_tstamp);
tp->rcv_tstamp = tcp_jiffies32;
tp->rcv_tstamp = tcp_jiffies32;
rcv_delta = tcp_timeout_expires(sk) - tp->rcv_tstamp;
jiffies_to_msecs(jiffies - tp->rcv_tstamp),
jiffies_to_msecs(jiffies - tp->rcv_tstamp),
u32 rcv_tstamp = READ_ONCE(tcp_sk(ssk)->rcv_tstamp);
subflow->stale_rcv_tstamp = rcv_tstamp;
} else if (subflow->stale_rcv_tstamp == rcv_tstamp) {
u32 rcv_tstamp = READ_ONCE(tcp_sk(mptcp_subflow_tcp_sock(subflow))->rcv_tstamp);
if (subflow->stale_rcv_tstamp == rcv_tstamp)
rcv_tstamp(accept_fd, buf, sizeof(buf));
rcv_tstamp(listen_fd, buf, sizeof(buf));