David S. Miller wrote:> > - Doing gettimeofday on each incoming packet is just dumb, especially> > when you have gettimeofday backed with a slow southbridge timer.> > This shows quite badly on many profile logs.> > I still think right solution for that would be to only take time stamps> > when there is any user for it (= no timestamps in 99% of all systems) > > Andi, I know this is a problem, but for the millionth time your idea> does not work because we don't know if the user asked for the timestamp> until we are deep within the recvmsg() processing, which is long after> the packet has arrived.

Do the timestamps need to be precise and accurately reflect thearrival time in the irq handler? Or, for TCP timestamps, would it begood enough to use the time when the protocol handlers are run, andonly read the hardware clock once for a bunch of received packets? Oreven use jiffies?

Apart from TCP, precise timestamps are only used for packet capture,and it's easy to keep track globally of whether anyone has packetsockets open.