|From:||Julian Anastasov <email@example.com>|
|Subject:||[PATCH RFC 0/2] Interface for TCP Metrics|
|Date:||Thu, 23 Aug 2012 18:01:43 +0300|
This patchset contains 2 patches, one for kernel and one for iproute2. We add DUMP/GET/DEL support for genl "tcp_metrics" and minimal support for filtering by address prefix and family in user space. I tested show/del/flush, filtering by family, prefix, output for metrics such as rtt, rttvar, cwnd, ssthresh (after modifying route). I didn't tested output for fast open. May be some corrections in output can be desired. The kernel patch has some parts to check: - in tcp_metrics_nl_cmd_del I'm trying to flush all addresses with single request, eg. when no family, address or other selectors are provided. I use some arbitrary counter sync_count to force memory to be freed in parts by using synchronize_rcu, note that we are under genl_mutex, so may be this is bad idea to delay other genl users? My idea was to avoid many commands on "flush all", may be we should trigger flush by using some other mechanism that is pernet? And I don't know how to test it properly without large cache. - This function now uses rcu_dereference_protected, someone should check if these lockdep checks are correct. I enabled lockdep in config and don't see any warnings.
Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds