The number of preliminary patches in the pesto series has grown to the point that I think it's worth trying to get a bunch merged, while we polish the rest. Changes from pesto series v3 * Extracted just the preliminary patches, not introducing pesto itself * Several small revisions based on Stefano's feedback * Added several extra bits of preliminary rework. David Gibson (18): conf: runas can be const fwd: Comparing rule can be const vhost_user: Fix assorted minor cppcheck warnings serialise: Split functions user for serialisation from util.c serialise: Add helpers for serialising unsigned integers fwd: Move selecting correct scan bitmap into fwd_sync_one() fwd: Look up rule index in fwd_sync_one() fwd: Store forwarding tables indexed by (origin) pif fwd: Allow FWD_DUAL_STACK_ANY flag to be passed directly to fwd_rule_add() fwd, conf: Expose ephemeral ports as bitmap rather than function conf: Don't bother complaining about overlapping excluded ranges conf: Move check for mapping port 0 to caller conf: Move check for disabled interfaces earlier conf: Remove redundant warning when SO_BINDTODEVICE is unavailable pif: Limit pif names to IFNAMSIZ (16) bytes ip: Define a bound for the string returned by ipproto_name() bitmap: Split bitmap helper functions into their own module fwd: Split forwading rule specification from its implementation state Makefile | 24 +++---- bitmap.c | 99 ++++++++++++++++++++++++++++ bitmap.h | 24 +++++++ conf.c | 113 ++++++++++++++++---------------- flow.c | 35 +++++----- fwd.c | 177 ++++++++++++++++++++++++++------------------------- fwd.h | 38 +++-------- fwd_rule.h | 44 +++++++++++++ ip.c | 18 ++++-- ip.h | 2 + migrate.c | 1 + passt.h | 6 +- pcap.c | 1 + pif.c | 2 +- pif.h | 4 +- serialise.c | 123 +++++++++++++++++++++++++++++++++++ serialise.h | 21 ++++++ tcp.c | 1 + util.c | 154 +------------------------------------------- util.h | 12 ---- vhost_user.c | 16 +++-- virtio.h | 2 +- vu_common.c | 2 +- 23 files changed, 535 insertions(+), 384 deletions(-) create mode 100644 bitmap.c create mode 100644 bitmap.h create mode 100644 fwd_rule.h create mode 100644 serialise.c create mode 100644 serialise.h -- 2.53.0