Here's my latest revision of some of the basics of the flow table. So far it's basically just a renaming of the existing TCP connection table. It's used for some new logging helpers, but otherwise doesn't really function any differently. However, this subset of the flow table work no longer bloats flow/connection entries over a single cache line. That removes the most prominent drawback of earlier revisions, meaning I think this series is ready for merge now. Doing so will mean the later series making more substantive changes to the flow behaviour are simpler. David Gibson (6): test: Make handling of shell prompts with escapes a little more reliable flow, tcp: Generalise connection types flow, tcp: Move TCP connection table to unified flow table flow, tcp: Consolidate flow pointer<->index helpers flow: Make unified version of flow table compaction flow, tcp: Add logging helpers for connection related messages Makefile | 14 +-- flow.c | 87 +++++++++++++++++++ flow.h | 60 +++++++++++++ flow_table.h | 45 ++++++++++ passt.h | 3 + tcp.c | 232 +++++++++++++++++++++++--------------------------- tcp.h | 5 -- tcp_conn.h | 46 +++------- tcp_splice.c | 88 +++++++++---------- test/lib/term | 6 +- 10 files changed, 361 insertions(+), 225 deletions(-) create mode 100644 flow.c create mode 100644 flow.h create mode 100644 flow_table.h -- 2.42.0