Re: [PATCH] fs: eventpoll: add empty event

From: Eric Dumazet
Date: Mon Sep 27 2021 - 16:47:59 EST


On Mon, Sep 27, 2021 at 1:30 PM Johannes Lundberg <jlundberg@xxxxxxxx> wrote:
>
> The EPOLLEMPTY event will trigger when the TCP write buffer becomes
> empty, i.e., when all outgoing data have been ACKed.
>
> The need for this functionality comes from a business requirement
> of measuring with higher precision how much time is spent
> transmitting data to a client. For reference, similar functionality
> was previously added to FreeBSD as the kqueue event EVFILT_EMPTY.


Adding yet another indirect call [1] in TCP fast path, for something
(measuring with higher precision..)
which is already implemented differently in TCP stack [2] is not desirable.

Our timestamping infrastructure should be ported to FreeBSD instead :)

[1] CONFIG_RETPOLINE=y

[2] Refs :
commit e1c8a607b28190cd09a271508aa3025d3c2f312e
net-timestamp: ACK timestamp for bytestreams
tools/testing/selftests/net/txtimestamp.c