Thread (7 messages) flat view 7 messages, 2 authors, 2016-07-17

Re: [PATCH net-next] net: ipmr/ip6mr: add support for keeping an entry age

From: Nikolay Aleksandrov <hidden>
Date: 2016-07-15 23:19:20

On Jul 14, 2016, at 8:08 AM, Nikolay Aleksandrov [off-list ref] wrote:

In preparation for hardware offloading of ipmr/ip6mr we need an
interface that allows to check (and later update) the age of entries.
Relying on stats alone can show activity but not actual age of the entry,
furthermore when there're tens of thousands of entries a lot of the
hardware implementations only support "hit" bits which are cleared on
read to denote that the entry was active and shouldn't be aged out,
these can then be naturally translated into age timestamp and will be
compatible with the software forwarding age. Using a lastuse entry doesn't
affect performance because the entries in that cache line are written to
along with the age. Once an entry goes above the member size (32 bits) we
keep it at UINT_MAX as we cannot afford to wrap it which will falsely show
that it was used recently. This is not supposed to happen as entries should
be aged out in matter of minutes or seconds.
Since all new users are encouraged to use ipmr via netlink, this is
exported via the RTA_CACHEINFO attribute which has rta_lastuse entry.

Signed-off-by: Nikolay Aleksandrov <redacted>
CC: Roopa Prabhu <redacted>
CC: Shrijeet Mukherjee <redacted>
CC: Satish Ashok <redacted>
CC: Donald Sharp <redacted>
CC: David S. Miller <davem@davemloft.net>
CC: Alexey Kuznetsov <redacted>
CC: James Morris <jmorris@namei.org>
CC: Hideaki YOSHIFUJI <redacted>
CC: Patrick McHardy <redacted>
—
Self-NAK, I’ll send a revised v2 version using a single u32 attribute (RTA_EXPIRES), no need to waste the space
right now. We’ll add more as we need them.

Sorry for the noise.

Cheers,
 Nik
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help